2016-11-22 4 views
1

Es gibt mehrere Runbooks Beispiele in der Azure Runbook Gallery, wie zum Beispiel:Azure Automation Runbooks ohne Parameter Get-Credential mit

  • Bereitstellen von Windows Azure Web-Site auf eine SQL-Datenbank Pointing und Storage-Konto

, die die folgende Syntax mit Get-Credential verwenden:

$credential = Get-Credential 

WHI ch impliziert, dass der Befehl in einem Runbook mit der folgenden Meldung fehlschlagen sollte:

Get-Credential: Befehl kann aufgrund eines oder mehrerer fehlender obligatorischer Parameter nicht verarbeitet werden: Credential.

Die Anmeldeinformationen, die hier sind für diesen Zweck gewünscht sind:

# Get credentials from user to setup administrator access to new SQL Azure Server 

, die dann erhalten in Downstream-Cmdlets Anrufe in der Runbook wie

$databaseServer = New-AzureSqlDatabaseServer -AdministratorLogin $credential.UserName ` 
    -AdministratorLoginPassword $credential.GetNetworkCredential().Password -Location $Location 

Aber weil Get-Credential die verwendet wird, sollte nicht Downstream-Aufrufe schlagen fehl.

Was mache ich falsch?

Warum hat ein Runbook in der Galerie Anweisungen, die mit zulässigen Runbook-Verhalten inkompatibel sind (Aufforderung zur Eingabe von Anmeldeinformationen)?

Antwort

2

So mit Azure Automation, würden Sie einen Berechtigungsnachweis Vermögenswert (zB genannt zu) erstellen und dann würden Sie, dass in der Runbook verweisen diese Anmeldeinformationen zu erhalten:

$cred = Get-AutomationPSCredential -Name AzureAdmin 

Was die Referenz Skript, Ich nehme an, es wurde einfach zur Runbook-Galerie ohne Verifizierung hinzugefügt, also in Wirklichkeit ist es nicht Azure Automation-freundlich

+0

Ihr Vorschlag ermöglicht das Runbook ordnungsgemäß funktionieren - vielen Dank dafür. Ich würde jedoch nicht erwarten, die Anmeldeinformationen des Automatisierungskontos für die Anmeldung "-Administrator" für die SQL Server-Instanz zu verwenden. Ich würde erwarten, dass dies normalerweise auf ein "menschliches" Konto anstatt auf ein "Service/Automation" Konto ausgerichtet ist. Ich möchte meinen Account verwenden, unter dem ich mein Azure-Abonnement eingerichtet habe - aber ich denke nicht, dass Get-AutomationPSCredential für dieses Konto funktioniert. Versuche es jetzt. –

+0

warum nicht? Sie können ein Berechtigungsnachweis-Asset für jedes Konto erstellen. Es ist nur eine Möglichkeit, Anmeldeinformationen zu speichern ..., Sie würden auf Benutzername und Passwort als '$ cred.Username' und' $ cred.Password' zugreifen – 4c74356b41

Verwandte Themen