上一篇文章介绍了如何通过添加用户名和密码的方式实现自动化部署服务中与Azure Subscription的连接。
本文将介绍如何使用证书的方式实现Azure Automation与Azure的Subscription的连接方式。
一. 创建证书
通过openssl创建Private Key、Certification和pfx文件:
a. 创建Private Key
openssl genrsa -out hwazure.key
b. 根据Private Key生成crt证书
openssl req -new -x509 -key hwazure.key -out hwazure.crt
c. 通过Private Key和crt文件生成pfx文件
openssl pkcs12 -export -out hwazure.pfx -inkey hwazure.key -in hwazure.crt
二、上传httpd.crt到Azure
在Azure的管理界面中选择"设置",选择"证书管理"。在证书管理中选择"上传":
选择httpd.cer文件:
上传后:
- 创建、配置Automation
- 创建Automation的账户
点击Automation
- 添加资产
点击"资产":
- 添加连接
这里需要添加证书名称和Subscription ID两个参数:
选择"证书",名称填写证书的名称:
选择pfx的文件,并输入其密码:
两个添加的参数如下:
- 创建、编辑Runbook
在新建中创建Runbook:
创建Runbook后,对Runbook进行编辑:
具体的脚本如下:
workflow hwrunbook
{
$AzureconnName = 'hwazure'
$Azureconnection = get-automationconnection -name $AzureconnName
write-output $AzureConnection.AutomationCertificateName
$Certificate = Get-AutomationCertificate -Name $AzureConnection.AutomationCertificateName
write-output $Certificate
write-output $AzureconnName
set-azuresubscription -SubscriptionName $AzureconnName -subscriptionid $Azureconnection.SubscriptionID -Certificate $Certificate -environment AzureChinaCloud
select-azuresubscription -Default -subscriptionid $Azureconnection.SubscriptionID
$vm = get-azurevm
write-output $vm
}
- 总结
Azure的Automation有两种方式对Azure的Subscription进行管理,用户名、密码的方式和证书的方式。
由于用户名、密码的方式根据password policy要经常进行更新,所以建议采用证书的方式在Automation中进行管理。