你当前正在访问 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 通信的凭据、帐户、租户和订阅。
类型: | IAzureContextContainer |
别名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | 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\]}
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-ResourceGroupName
指定分配给根证书的资源组的名称。 资源组对项进行分类,以帮助简化库存管理和常规 Azure 管理。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-VirtualNetworkGatewayName
指定在其中添加证书的虚拟网络网关的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-VpnClientRootCertificateName
指定此 cmdlet 添加的客户端根证书的名称。
类型: | String |
别名: | ResourceName |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |