<gh_stars>0// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Vpn.Outputs
{

    [OutputType]
    public sealed class GatewayVpnAttachmentIkeConfig
    {
        /// <summary>
        /// IKE authentication algorithm supports sha1 and MD5.
        /// </summary>
        public readonly string? IkeAuthAlg;
        /// <summary>
        /// The encryption algorithm of phase-one negotiation. Valid value: aes | aes192 | aes256 | des | 3des. Default Valid value: aes.
        /// </summary>
        public readonly string? IkeEncAlg;
        /// <summary>
        /// The SA lifecycle as the result of phase-one negotiation. The valid value of n is [0, 86400], the unit is second and the default value is 86400.
        /// </summary>
        public readonly int? IkeLifetime;
        /// <summary>
        /// The negotiation mode of IKE V1. Valid value: main (main mode) | aggressive (aggressive mode). Default value: `main`.
        /// </summary>
        public readonly string? IkeMode;
        /// <summary>
        /// The Diffie-Hellman key exchange algorithm used by phase-one negotiation. Valid value: group1 | group2 | group5 | group14 | group24. Default value: group2
        /// </summary>
        public readonly string? IkePfs;
        /// <summary>
        /// The version of the IKE protocol. Valid value: `ikev1`, `ikev2`. Default value: `ikev1`.
        /// </summary>
        public readonly string? IkeVersion;
        /// <summary>
        /// The local ID, which supports the FQDN and IP formats. The current VPN gateway IP address is selected by default.
        /// </summary>
        public readonly string? LocalId;
        /// <summary>
        /// Used for authentication between the IPsec VPN gateway and the customer gateway.
        /// </summary>
        public readonly string? Psk;
        /// <summary>
        /// The peer ID, which supports FQDN and IP formats. By default, the IP address of the currently selected user gateway.
        /// </summary>
        public readonly string? RemoteId;

        [OutputConstructor]
        private GatewayVpnAttachmentIkeConfig(
            string? ikeAuthAlg,

            string? ikeEncAlg,

            int? ikeLifetime,

            string? ikeMode,

            string? ikePfs,

            string? ikeVersion,

            string? localId,

            string? psk,

            string? remoteId)
        {
            IkeAuthAlg = ikeAuthAlg;
            IkeEncAlg = ikeEncAlg;
            IkeLifetime = ikeLifetime;
            IkeMode = ikeMode;
            IkePfs = ikePfs;
            IkeVersion = ikeVersion;
            LocalId = localId;
            Psk = psk;
            RemoteId = remoteId;
        }
    }
}
