2017-09-18 2 views
1

Beim Bereitstellen einer Microsoft.Web-Ressource mit der neuen MSI-Funktion wird nach der Bereitstellung die PrinzipalID-GUID für den erstellten Benutzer angezeigt. Screenshot unten zeigt die Struktur in der ARM-Vorlage.Referenzieren einer Managed Service-Identität in ARM-Vorlagenbereitstellung

enter image description here

Was ist der beste Weg, um diese GUID später in der Pipeline holen zu können Zugriffsrechte in (zum Beispiel) Daten See Shop zuordnen würde?

Ist es möglich, eine der vorhandenen ARM-Vorlagenfunktionen zu verwenden?

Antwort

0

Hier sind einige Beispielvorlagen: https://github.com/rashidqureshi/MSI-Samples, die a) zeigen, wie RBAC Zugang zu gewähren ARM Ressourcen b), wie der Zugang für keyvault erstellen, um die OID der MSI

+0

Ich kann nicht scheinen, die [Referenz (Ressource, Aviversion, 'Full')] (d. H. Der 'Full') Teil arbeiten - scheint ungültige Syntax zu sein? Arm-Vorlage wird abgelehnt - was fehlt mir, um den überladenen Parameter 'Full' zu verwenden? Können Sie es nicht auch in der ARM-Dokumentation finden? – Rosstified

0

mit mir damit mir nur zu kämpfen. Die Lösung, die für mich arbeitete, wurde tief in den Kommentaren here gefunden.

Im Wesentlichen erstellen Sie eine Variable, die auf die Ressource abzielt, die Sie mit der MSI-Unterstützung erstellen. Dann können Sie die Variable verwenden, um die spezifischen Werte für tenantId und principalId abzurufen. Nicht ideal, aber es funktioniert. In meinen Beispielen konfiguriere ich Key Vault-Berechtigungen für eine Funktions-App.

Verwenden Sie zum Erstellen der Variablen die folgende Syntax.

"variables": { 
    "identity_resource_id": "[concat(resourceId('Microsoft.Web/sites', variables('appName')), '/providers/Microsoft.ManagedIdentity/Identities/default')]" 
} 

Um die tatsächlichen Werte für die tenantId und principalId Bezug sie mit folgenden Syntax zu erhalten:

{ 
    "tenantId": "[reference(variables('identity_resource_id'), '2015-08-31-PREVIEW').tenantId]", 
    "objectId": "[reference(variables('identity_resource_id'), '2015-08-31-PREVIEW').principalId]" 
} 

Hope this jeden, der zusammen mit dem gleichen Problem kommt hilft!