Dela via


New-AzVpnClientRootCertificate

Skapar ett nytt VPN-klientrotcertifikat.

Syntax

New-AzVpnClientRootCertificate
   -Name <String>
   -PublicCertData <String>
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

Cmdleten New-AzVpnClientRootCertificate skapar ett nytt VPN-rotcertifikat för användning på en virtuell nätverksgateway. Rotcertifikat är X.509-certifikat som identifierar rotcertifikatutfärdare: alla andra certifikat som används på gatewayen litar på rotcertifikatet. Den här cmdleten skapar ett fristående certifikat som inte har tilldelats till en virtuell gateway. I stället används certifikatet som skapats av New-AzVpnClientRootCertificate tillsammans med cmdleten New-AzVirtualNetworkGateway när du skapar en ny gateway. Anta till exempel att du skapar ett nytt certifikat och lagrar det i en variabel med namnet $Certificate. Du kan sedan använda certifikatobjektet när du skapar en ny virtuell gateway. Till exempel New-AzVirtualNetworkGateway -Name "ContosoVirtualGateway" -ResourceGroupName "ContosoResourceGroup" -Location "West US" -GatewayType "VPN" -IpConfigurations $Ipconfig -VPNType "RouteBased" -VpnClientRootCertificates $Certificate Mer information finns i dokumentationen för cmdleten New-AzVirtualNetworkGateway.

Exempel

Exempel 1: Skapa ett klientrotcertifikat

$Text = Get-Content -Path "C:\Azure\Certificates\ExportedCertificate.cer"
$CertificateText = for ($i=1; $i -lt $Text.Length -1 ; $i++){$Text[$i]}
$Certificate = New-AzVpnClientRootCertificate -PublicCertData $CertificateText -Name "ContosoClientRootCertificate"

Det här exemplet skapar ett klientrotcertifikat och lagrar certifikatobjektet i en variabel med namnet $Certificate. Den här variabeln kan sedan användas av cmdleten New-AzVirtualNetworkGateway för att lägga till ett rotcertifikat till en ny virtuell nätverksgateway. Det första kommandot använder cmdleten Get-Content för att hämta en tidigare exporterad textrepresentation av rotcertifikatet. Textdata lagras i en variabel med namnet $Text. Det andra kommandot använder sedan en for-loop för att extrahera all text förutom den första raden och den sista raden och lagrar den extraherade texten i en variabel med namnet $CertificateText. Det tredje kommandot använder cmdleten New-AzVpnClientRootCertificate för att skapa certifikatet och lagrar det skapade objektet i en variabel med namnet $Certificate.

Parametrar

-DefaultProfile

Autentiseringsuppgifter, konto, klientorganisation och prenumeration som används för kommunikation med Azure.

Typ:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Name

Anger ett namn på det nya klientrotcertifikatet.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-PublicCertData

Anger en textrepresentation av rotcertifikatet som ska läggas till. Om du vill hämta textrepresentationen exporterar du certifikatet i .cer format (med Base64-kodning) och öppnar sedan den resulterande filen i en textredigerare. Du bör se utdata som liknar detta (observera att de faktiska utdata innehåller många fler textrader än det förkortade exemplet som visas här): ----- BEGIN CERTIFICATE ----- MIIC13FAAXC3671Auij9HHgUNEW8343NMJklo09 982CVVFAw8w ----- END CERTIFICATE ----- The PublicCertData består av alla rader mellan den första raden (----- BEGIN CERTIFICATE -----) och den sista raden (----- END CERTIFICATE -----) i filen. Du kan hämta PublicCertData med hjälp av Windows PowerShell-kommandon som liknar följande: $Text = Get-Content -Path "C:\Azure\Certificates\ExportedCertificate.cer" $CertificateText = för ($i=1; $i -lt $Text.Length -1 ; $i++){$Text[$i]}

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

Indata

String

Utdata

PSVpnClientRootCertificate