凭据

 

适用对象:Windows Azure Pack for Windows Server, System Center 2012 R2 Orchestrator

自动化 凭据是可以与 Windows PowerShell 命令配合使用的用户名和密码,或是上载到服务器的证书。 凭据的属性安全地存储在 自动化 数据库中,可以通过 Get-AutomationPSCredentialGet-AutomationCertificate 活动在 runbook 中进行访问。

Windows PowerShell Cmdlet

下表中的 cmdlet 用于通过 Service Management Automation 中的 Windows PowerShell 创建和管理凭据。

Cmdlet

描述

Get-SmaCertificate

检索 自动化 证书。

Get-SmaCredential

检索 自动化 PowerShell 凭据。

Remove-SmaCertificate

删除 自动化 证书。

Remove-SmaCredential

删除 自动化 PowerShell 凭据。

Set-SmaCertificate

创建新证书,或设置现有证书的属性(包括上载证书文件以及为 .pfx 设置密码)。

Set-SmaCredential

创建新 自动化 PowerShell 凭据或设置现有凭据的属性。

Runbook 活动

下表中的活动用于在 runbook 中访问凭据。

活动

描述

Get-AutomationCertificate

获取要在 runbook 中使用的证书。

Get-AutomationPSCredential

获取要在 runbook 中使用的用户名/密码。

System_CAPS_note注意

应避免在 Get-AutomationPSCredentialGet-AutomationCertificate 的 –Name 参数中使用变量,因为这可能会使发现 runbook 与 自动化 变量之间的依赖关系变得复杂化。

创建新凭据

使用管理门户创建新 PowerShell 凭据

  1. 选择“自动化”工作区。

  2. 在窗口顶部,单击“资产”。

  3. 在窗口底部,单击“添加设置”。

  4. 单击“添加凭据”。

  5. 在“凭据类型”下拉列表中,选择“PowerShell 凭据”。

  6. 在“名称”框中为凭据输入名称。

  7. 单击右箭头。

  8. 为每个属性输入值。

  9. 单击复选标记以保存凭据。

使用管理门户创建新证书

  1. 选择“自动化”工作区。

  2. 在窗口顶部,单击“资产”。

  3. 在窗口底部,单击“添加设置”。

  4. 单击“添加凭据”。

  5. 在“凭据类型”下拉列表中,选择“证书”。

  6. 在“名称”框中为证书输入名称。

  7. 单击右箭头。

  8. 单击“浏览文件”并导航到 .cer 或 .pfx 文件。

  9. 如果选择了 .pfx 文件,则提供其密码。

  10. 单击复选标记以保存证书。

使用 Service Management Automation 中的 Windows PowerShell 创建新 PowerShell 凭据

下面的示例命令演示如何创建新凭据。

$webServer = 'https://MyWebServer'
$port = 9090
$credName = 'MyCredential'
$user = 'contoso\MyUser'
$pwd = ConvertTo-SecureString -String 'P@$$w0rd' -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user,$pwd

Set-SmaCredential -WebServiceEndpoint $webServer -port $port -Name $credName -Value $cred

使用 Service Management Automation 中的 Windows PowerShell 创建新 PowerShell 证书

下面的示例命令演示如何通过导入证书文件来创建新证书。

$webServer = 'https://MyWebServer'
$port = 9090
$certName = 'MyCertificate'
$path = 'c:\certs\MyCertificate.pfx'
$certPwd = ConvertTo-SecureString -String 'P@$$w0rd' -AsPlainText -Force

Set-SmaCertificate -WebServiceEndpoint $webServer -port $port -Name $certName –Path $certPath –Password $certPwd

在 Runbook 中使用 PowerShell 凭据

可 runbook 中使用 Get-AutomationPSCredential 活动检索 PowerShell 凭据。 这会返回可以在工作流中使用的 PSCredential 对象。

在 runbook 中使用 PowerShell 凭据

  • 下面的示例命令演示如何在 runbook 中使用 PowerShell 凭据。 在此示例中,凭据与 InlineScript 活动配合使用,以便运行一组使用备用凭据的命令。

    $myCredential = Get-AutomationPSCredential -Name 'MyCredential'
    InlineScript {
       <Commands>
    } -PSComputerName $ServerName -PSCredential $myCredential