Freigeben über


Azure-Authentifizierung im Daten-API-Generator

Mit dem Daten-API-Generator können Entwickler den Authentifizierungsmechanismus (Identitätsanbieter) definieren, mit dem der Daten-API-Generator authentifiziert werden soll, wer Anforderungen stellt.

Die Authentifizierung wird an einen unterstützten Identitätsanbieter delegiert, bei dem Zugriffstoken ausgestellt werden kann. Ein erworbenes Zugriffstoken muss in eingehende Anforderungen an den Daten-API-Generator eingeschlossen werden. Der Daten-API-Generator überprüft dann alle präsentierten Zugriffstoken, um sicherzustellen, dass der Daten-API-Generator die beabsichtigte Zielgruppe des Tokens war.

Die unterstützten Konfigurationsoptionen für Identitätsanbieter sind:

  • StaticWebApps
  • JSON-Webtoken (JWT)

Azure Static Web Apps-Authentifizierung (EasyAuth)

Der Daten-API-Generator erwartet, dass die Azure Static Web Apps-Authentifizierung (EasyAuth) die Anforderung authentifiziert und Metadaten über den authentifizierten Benutzer im X-MS-CLIENT-PRINCIPAL HTTP-Header bereitgestellt wird, wenn die Option StaticWebAppsverwendet wird. Auf die von Static Web Apps bereitgestellten authentifizierten Benutzermetadaten kann in der folgenden Dokumentation verwiesen werden: Zugreifen auf Benutzerinformationen.

Um den StaticWebApps-Anbieter zu verwenden, müssen Sie die folgende Konfiguration im Abschnitt runtime.host der Konfigurationsdatei angeben:

"authentication": {
    "provider": "StaticWebApps"
}

Die Verwendung des StaticWebApps-Anbieters ist nützlich, wenn Sie den Daten-API-Generator in Azure ausführen möchten, indem Sie ihn mit App Service hosten und in einem Container ausführen: Einen benutzerdefinierten Container in Azure App Serviceausführen.

JWT

Um den JWT-Anbieter zu verwenden, müssen Sie den Abschnitt runtime.host.authentication konfigurieren, indem Sie die erforderlichen Informationen angeben, um das empfangene JWT-Token zu überprüfen:

"authentication": {
    "provider": "AzureAD",
    "jwt": {
        "audience": "<APP_ID>",
        "issuer": "https://login.microsoftonline.com/<AZURE_AD_TENANT_ID>/v2.0"
    }
}

Rollenauswahl

Sobald eine Anforderung über eine der verfügbaren Optionen authentifiziert wurde, werden die im Token definierten Rollen verwendet, um zu bestimmen, wie Berechtigungsregeln ausgewertet werden, um autorisieren die Anforderung zu autorisieren. Jede authentifizierte Anforderung wird automatisch der authenticated Systemrolle zugewiesen, es sei denn, eine Benutzerrolle wird zur Verwendung angefordert. Weitere Informationen finden Sie unter Autorisierung.

Anonyme Anforderungen

Anforderungen können auch ohne Authentifizierung erfolgen. In solchen Fällen wird die Anforderung automatisch der anonymous Systemrolle zugewiesen, sodass sie ordnungsgemäß autorisiertenwerden kann.

X-MS-API-ROLE Anforderungsheader

Der Daten-API-Generator erfordert den Header X-MS-API-ROLE, um Anforderungen mit benutzerdefinierten Rollen zu autorisieren. Der Wert von X-MS-API-ROLE muss mit einer im Token angegebenen Rolle übereinstimmen. Wenn das Token beispielsweise die Rolle Sample.Rolehat, sollte X-MS-API-ROLE auch Sample.Rolesein. Weitere Informationen finden Sie unter Autorisierungsbenutzerrollen.