你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Add-AzVpnClientRootCertificate

添加 VPN 客户端根证书。

语法

Add-AzVpnClientRootCertificate
   -VpnClientRootCertificateName <String>
   -VirtualNetworkGatewayName <String>
   -ResourceGroupName <String>
   -PublicCertData <String>
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

说明

Add-AzVpnClientRootCertificate cmdlet 将根证书添加到虚拟网络网关。 根证书是标识根证书颁发机构的 X.509 证书。 根据设计,网关上使用的所有证书都信任根证书。 此 cmdlet 将现有证书分配为网关根证书。 如果没有可用的 X.509 证书,可以通过公钥基础结构生成一个证书,或使用证书生成器(如makecert.exe)。 若要添加根证书,必须指定证书名称并提供证书的纯文本表示形式(有关详细信息,请参阅 PublicCertData 参数)。 Azure 允许向网关分配多个根证书。 多个根证书通常由包含来自多个公司的用户的组织部署。

示例

示例 1:将客户端根证书添加到虚拟网关

$Text = Get-Content -Path "C:\Azure\Certificates\ExportedCertificate.cer"
$CertificateText = for ($i=1; $i -lt $Text.Length -1 ; $i++){$Text[$i]}
Add-AzVpnClientRootCertificate -PublicCertData $CertificateText -ResourceGroupName "ContosoResourceGroup" -VirtualNetworkGatewayName "ContosoVirtualGateway" -VpnClientRootCertificateName "ContosoClientRootCertificate"

此示例将客户端根证书添加到名为 ContosoVirtualGateway 的虚拟网关。 第一个命令使用 Get-Content cmdlet 获取根证书以前导出的文本表示形式,并将该文本数据存储为名为$Text的变量。 然后,第二个命令使用 for 循环提取除第一行和最后一行之外的所有文本。 提取的文本存储在名为$CertificateText的变量中。 然后,第三个命令将存储在 $CertificateText 中的文本与 Add-AzVpnClientRootCertificate cmdlet 配合使用,将根证书添加到网关。

参数

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PublicCertData

指定要添加的根证书的文本表示形式。 若要获取文本表示形式,请使用 .cer 格式导出证书(使用 Base64 编码),然后在文本编辑器中打开生成的文件。 执行此操作时,将看到类似于以下内容的输出(请注意,实际输出将包含比此处所示的缩写示例更多的文本行):----- BEGIN CERTIFICATE ----- MIIC13FAAXC3671Auij9HHgUNEW8343NMJklo09982CVVFAw8w ----- END CERTIFICATE ----- PublicCertData 由第一行(----- BEGIN CERTIFICATE -----)和文件中最后一行(----- END CERTIFICATE -----)之间的所有行组成。 可以使用类似于以下内容的 Windows PowerShell 命令检索此数据: $Text = Get-Content -Path "C:\Azure\Certificates\ExportedCertificate.cer"$CertificateText = for ($i=1; $i -lt $Text.Length -1 ; $i++){$Text\[$i\]}

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

指定分配给根证书的资源组的名称。 资源组对项进行分类,以帮助简化库存管理和常规 Azure 管理。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VirtualNetworkGatewayName

指定在其中添加证书的虚拟网络网关的名称。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VpnClientRootCertificateName

指定此 cmdlet 添加的客户端根证书的名称。

Type:String
Aliases:ResourceName
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

输入

String

输出

PSVpnClientRootCertificate