Add-AzVpnClientRootCertificate
语法
Default (默认值)
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 通信的凭据、帐户、租户和订阅。
参数属性
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | 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
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | True |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-ResourceGroupName
指定分配给根证书的资源组的名称。
资源组对项进行分类,以帮助简化库存管理和常规 Azure 管理。
参数属性
| 类型: | String
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | True |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-VirtualNetworkGatewayName
指定在其中添加证书的虚拟网络网关的名称。
参数属性
| 类型: | String
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | True |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-VpnClientRootCertificateName
指定此 cmdlet 添加的客户端根证书的名称。
参数属性
| 类型: | String
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | 资源名称 |
参数集
(All)
| Position: | Named |
| 必需: | True |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
CommonParameters
此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。
输出