Wie erstelle ich in PowerShell ein App-Registrierungsgeheimnis (App Registration Secret)?
- Voraussetzungen für die Erstellung eines App-Registrierungsgeheimnisses mit PowerShell
- Verwendung des Microsoft Graph PowerShell-Moduls zur Erstellung des Secrets
- Beispielskript zur Erstellung eines App-Registrierungsgeheimnisses
- Wichtige Hinweise und Sicherheitsaspekte
Das Erstellen eines App-Registrierungsgeheimnisses, auch Client Secret genannt, ist ein wichtiger Schritt, wenn man eine Anwendung in Azure Active Directory (Azure AD) registriert und diese Anwendung berechtigt werden soll, sich gegenüber anderen Diensten zu authentifizieren. Mit PowerShell lässt sich dieser Prozess automatisieren und effizient gestalten. Im Folgenden wird erklärt, wie man ein App-Registrierungsgeheimnis mit PowerShell erstellt und welche Voraussetzungen dafür notwendig sind.
Voraussetzungen für die Erstellung eines App-Registrierungsgeheimnisses mit PowerShell
Bevor man mit der Erstellung eines Secrets beginnt, ist es wichtig sicherzustellen, dass man die nötigen Berechtigungen besitzt. Man benötigt mindestens die Rolle eines Azure AD Application Administrator oder Globalen Administrators in Azure AD, um App-Registrierungen und deren Geheimnisse zu verwalten. Zusätzlich muss das passende PowerShell-Modul installiert sein, wie beispielsweise das Modul Az für allgemeine Azure-Verwaltung oder das spezifische Modul Microsoft.Graph, das für moderne Azure AD API-Aufrufe empfohlen wird.
Verwendung des Microsoft Graph PowerShell-Moduls zur Erstellung des Secrets
Die aktuelle und empfohlene Methode, Azure AD App-Registrierungen zu verwalten, ist über das Microsoft Graph PowerShell-SDK. Um ein neues Client Secret zu erstellen, muss man sich zuerst authentifizieren und dann das Secret für die gewünschte App(registration) hinzufügen.
Nach der Anmeldung mit Connect-MgGraph kann man die App-ID der zu bearbeitenden App abrufen oder direkt verwenden. Anschließend wird mit New-MgApplicationPassword ein neues Secret generiert. Der Befehl liefert dabei den Wert des Secrets zurück, der anschließend gespeichert werden muss, da er nach der Erstellung nicht mehr eingesehen werden kann.
Beispielskript zur Erstellung eines App-Registrierungsgeheimnisses
Im Folgenden eine beispielhafte Sequenz, die die wichtigsten Schritte zeigt:
Connect-MgGraph -Scopes Application.ReadWrite.All
Dieser Befehl meldet den Benutzer an und fordert die notwendigen Berechtigungen an.
Als nächstes wird ein neues Client Secret generiert mit:
New-MgApplicationPassword -ApplicationId <App-Id> -DisplayName "MeinSecret" -EndDate (Get-Date).AddYears(1)
Das Resultat besteht aus einem Objekt, das den neuen Geheimniswert sowie Metadaten enthält. Wichtig ist, den Secret Value unmittelbar nach der Ausgabe sicher abzulegen, weil dieser Wert später nicht mehr abrufbar ist.
Wichtige Hinweise und Sicherheitsaspekte
Beim Umgang mit Client Secrets sollte stets die Sicherheit im Vordergrund stehen. Das Secret muss vertraulich behandelt werden, da es wie ein Passwort fungiert und den Zugang zur Anwendung ermöglicht. Es ist ratsam, starke und möglichst langlebige Secrets zu verwenden, außerdem regelmäßig alte Geheimnisse zu rotieren und nicht mehr benötigte Secrets zu löschen.
Zusammenfassend lässt sich sagen, dass das Erstellen eines App-Registrierungsgeheimnisses in PowerShell mit Hilfe des Microsoft Graph SDK eine sichere, wiederholbare und automatisierbare Methode darstellt, um Anwendungen in Azure AD mit notwendigen Zugangsdaten auszustatten.
