Sicherer externer Zugriff auf das API Management-Entwicklerportal.
GILT FÜR: Entwickler | Basic | Basic v2 | Standard | Standard v2 | Premium
API Management bietet auch ein vollständig anpassbares, eigenständiges, verwaltetes Entwicklerportal, das extern (oder intern) verwendet werden kann, damit Entwicklerbenutzer die über API Management veröffentlichten APIs entdecken und mit ihnen interagieren können. Das Entwicklerportal bietet mehrere Optionen, um die sichere Registrierung und Anmeldung von Benutzern zu erleichtern.
Hinweis
Das Entwicklerportal ermöglicht standardmäßig den anonymen Zugriff. Das bedeutet, dass jeder das Portal und Inhalte wie APIs einsehen kann, ohne sich anzumelden, obwohl Funktionen wie die Verwendung der Testkonsole eingeschränkt sind. Sie können eine Einstellung aktivieren, nach der sich Benutzer anmelden müssen, um das Entwicklerportal anzuzeigen. Wählen Sie im Azure-Portal im linken Menü Ihrer API-Verwaltungsinstanz unter Entwicklerportal Identitäten>Einstellungen aus. Wählen Sie unter Anonyme Benutzer Anonyme Benutzer zur Anmeldeseite umleiten (aktivieren) aus.
Authentifizierungsoptionen
Externe Benutzer – Die bevorzugte Option, wenn das Entwicklerportal extern verwendet wird, besteht darin, die Business-to-Consumer-Zugriffssteuerung über Azure Active Directory B2C (Azure AD B2C) zu aktivieren.
- Azure AD B2C bietet die Möglichkeit, native Azure AD B2C-Konten zu verwenden: Benutzer melden sich bei Azure AD B2C an und verwenden diese Identität, um auf das Entwicklerportal zuzugreifen.
- Azure AD B2C ist auch nützlich, wenn Sie Benutzern den Zugriff auf das Entwicklerportal über vorhandene soziale Medien oder föderierte Organisationskonten ermöglichen möchten.
- Azure AD B2C bietet viele Features zur Verbesserung der Endbenutzerregistrierung und -anmeldung, einschließlich bedingtem Zugriff und MFA.
Schritte zum Aktivieren der Azure AD B2C-Authentifizierung im Entwicklerportal finden Sie unter Autorisieren von Entwicklerkonten mithilfe von Azure Active Directory B2C in Azure API Management.
Interne Benutzer: Die bevorzugte Option, wenn das Entwicklerportal intern genutzt wird, ist die Nutzung der Microsoft Entra ID-Instanz Ihres Unternehmens. Microsoft Entra ID bietet eine nahtlose SSO-Erfahrung (Single Sign-On) für Unternehmensbenutzer*innen, die über das Entwicklerportal auf APIs zugreifen und diese entdecken müssen.
Schritte zum Aktivieren der Microsoft Entra-Authentifizierung im Entwicklerportal finden Sie unter Autorisieren von Entwicklerkonten mithilfe von Microsoft Entra ID in Azure API Management.
Standardauthentifizierung– Eine Standardoption ist die Verwendung des integrierten Anbieters Benutzername und Kennwort des Entwicklerportals, der es Entwicklerbenutzern ermöglicht, sich direkt bei API Management zu registrieren und sich mit API Management-Benutzerkonten anzumelden. Die Benutzeranmeldung über diese Option ist durch einen CAPTCHA-Dienst geschützt.
Testkonsole des Entwicklerportals
Das Entwicklerportal bietet nicht nur eine Konfiguration für Entwicklerbenutzer, um sich für den Zugriff zu registrieren und sich anzumelden, sondern enthält auch eine Testkonsole, über die die Entwickler Testanforderungen über API Management an die Back-End-APIs senden können. Diese Testeinrichtung existiert auch für beitragende Benutzer von API Management, die den Dienst über das Azure-Portal verwalten.
Wenn die über Azure API Management verfügbar gemachte API mit OAuth 2.0 gesichert ist – d. h. eine aufrufende Anwendung (Bearer) muss ein gültiges Zugriffstoken abrufen und weitergeben – können Sie in beiden Fällen API Management so konfigurieren, dass ein gültiges Token im Auftrag generiert wird eines Azure-Portal- oder Entwicklerportal-Testkonsolenbenutzers. Weitere Informationen finden Sie unter Autorisieren der Testkonsole des Entwicklerportals durch Konfigurieren der OAuth 2.0-Benutzerautorisierung.
So aktivieren Sie die Testkonsole zum Abrufen eines gültigen OAuth 2.0-Tokens für API-Tests:
Fügen Sie Ihrer Instanz einen OAuth 2.0-Benutzerautorisierungsserver hinzu. Sie können einen beliebigen OAuth 2.0-Anbieter verwenden, einschließlich Microsoft Entra ID, Azure AD B2C oder eines Identitätsanbieters eines Drittanbieters.
Konfigurieren Sie dann die API mit Einstellungen für diesen Autorisierungsserver. Konfigurieren Sie im Portal die OAuth 2.0-Autorisierung auf der Seite Einstellungen der der API unter >Sicherheit>Benutzerautorisierung.
Diese OAuth-Konfiguration 2.0 für API-Tests ist unabhängig von der Konfiguration, die für den Benutzerzugriff auf das Entwicklerportal erforderlich ist. Der Identitätsanbieter und der Benutzer könnten jedoch identisch sein. Beispielsweise kann eine Intranetanwendung den Benutzerzugriff auf das Entwicklerportal über einmaliges Anmelden mit ihrer Unternehmensidentität erfordern. Dieselbe Unternehmensidentität könnte über die Testkonsole ein Token für den Backend-Dienst erhalten, der mit demselben Benutzerkontext aufgerufen wird.
Szenarien
Für unterschiedliche Szenarien gelten unterschiedliche Authentifizierungs- und Autorisierungsoptionen. In den folgenden Abschnitten werden Konfigurationen auf hoher Ebene für drei Beispielszenarien untersucht. Für die vollständige Sicherung und Konfiguration von APIs, die über die API-Verwaltung zugänglich sind, sind weitere Schritte erforderlich. Die Szenarien konzentrieren sich jedoch bewusst auf die jeweils empfohlenen Mindestkonfigurationen, um die erforderliche Authentifizierung und Autorisierung bereitzustellen.
Szenario 1 – Intranet-API und -Anwendungen
- Ein API Management-Mitarbeiter und Back-End-API-Entwickler möchte eine API veröffentlichen, die durch OAuth 2.0 gesichert ist.
- Die API wird von Desktopanwendungen verwendet, deren Benutzer*innen sich mit SSO über Microsoft Entra ID anmelden.
- Die Entwickler von Desktop-Anwendungen müssen die APIs auch über das API Management-Entwicklerportal entdecken und testen.
Schlüsselkonfigurationen:
Konfiguration | Verweis |
---|---|
Autorisieren Sie Entwicklerbenutzer*innen des API Management-Entwicklerportals mit ihren Unternehmensidentitäten und Microsoft Entra ID. | Autorisieren von Entwicklerkonten mithilfe von Microsoft Entra ID in Azure API Management |
Richten Sie die Testkonsole im Entwicklerportal ein, um ein gültiges OAuth 2.0-Token für die Desktop-App-Entwickler zum Ausführen der Back-End-API zu erhalten. Dieselbe Konfiguration kann für die Testkonsole im Azure-Portal verwendet werden, auf das API Management-Mitwirkende und Back-End-Entwickler zugreifen können. Das Token könnte in Kombination mit einem API Management-Abonnementschlüssel verwendet werden. |
Autorisieren der Testkonsole des Entwicklerportals durch Konfigurieren der OAuth 2.0-Benutzerautorisierung Abonnements in Azure API Management |
Validieren Sie das OAuth 2.0-Token und Ansprüche, wenn eine API über API Management mit einem Zugriffstoken aufgerufen wird. | JWT-Richtlinie überprüfen |
Gehen Sie mit diesem Szenario noch einen Schritt weiter, indem Sie API Management in den Netzwerkperimeter verlagern und eingehenden Datenverkehr über einen Reverse-Proxy steuern. Eine Referenzarchitektur finden Sie unter Schützen von APIs mit Application Gateway und API Management.
Szenario 2 – Externe API, Partneranwendung
- Ein API Management-Mitarbeiter und Back-End-API-Entwickler möchte einen schnellen Proof-of-Concept durchführen, um eine Legacy-API über Azure API Management verfügbar zu machen. Die API durch API Management wird nach außen (Internet) gerichtet sein.
- Die API verwendet eine Client-Zertifikat-Authentifizierung und wird von einer neuen, öffentlich zugänglichen Single-Page-App (SPA) genutzt, die von einem Partner offshore entwickelt wird.
- Die SPA verwendet OAuth 2.0 mit OpenID Connect (OIDC).
- Anwendungsentwickler greifen in einer Testumgebung über das Entwicklerportal auf die API zu und verwenden einen Test-Backend-Endpunkt, um die Frontend-Entwicklung zu beschleunigen.
Schlüsselkonfigurationen:
Konfiguration | Verweis |
---|---|
Konfigurieren Sie den Frontend-Entwicklerzugriff auf das Entwicklerportal mit der standardmäßigen Benutzernamen- und Kennwortauthentifizierung. Entwickler können auch zum Entwicklerportal eingeladen werden. |
Konfigurieren Sie Benutzer des Entwicklerportals so, dass sie sich mit Benutzernamen und Kennwörtern authentifizieren Verwalten von Benutzerkonten in Azure API Management |
Validieren Sie das OAuth 2.0-Token und die Ansprüche, wenn die SPA API Management mit einem Zugriffstoken aufruft. In diesem Fall ist die Zielgruppe API Management. | JWT-Richtlinie überprüfen |
Richten Sie API Management so ein, dass die Clientzertifikatauthentifizierung gegenüber dem Back-End verwendet wird. | Sichern von Back-End-Diensten über eine Clientzertifikatauthentifizierung in Azure API Management |
Gehen Sie mit diesem Szenario weiter, indem Sie das Entwicklerportal mit Microsoft Entra-Autorisierung und Microsoft Entra-B2B-Zusammenarbeit verwenden, um den Bereitstellungspartnern eine engere Zusammenarbeit zu ermöglichen. Erwägen Sie, den Zugriff auf API Management über RBAC in einer Entwicklungs- oder Testumgebung zu delegieren, und aktivieren Sie SSO im Entwicklerportal mit ihren eigenen Unternehmensanmeldeinformationen.
Szenario 3 – Externe API, SaaS, öffentlich zugänglich
Ein API Management-Mitarbeiter und Backend-API-Entwickler schreibt mehrere neue APIs, die Community-Entwicklern zur Verfügung stehen werden.
Die APIs werden öffentlich verfügbar sein, wobei die volle Funktionalität hinter einer Paywall geschützt und mit OAuth 2.0 gesichert ist. Nach dem Kauf einer Lizenz erhält der Entwickler seine eigenen Client-Anmeldeinformationen und einen Abonnementschlüssel, der für die Produktionsnutzung gültig ist.
Externe Community-Entwickler entdecken die APIs über das Entwicklerportal. Entwickler registrieren sich und melden sich mit ihren Social-Media-Konten beim Entwicklerportal an.
Interessierte Entwicklerportalbenutzer mit einem Testabonnementschlüssel können die API-Funktionalität in einem Testkontext erkunden, ohne eine Lizenz erwerben zu müssen. Die Testkonsole des Entwicklerportals stellt die aufrufende Anwendung dar und generiert ein Standardzugriffstoken für die Back-End-API.
Achtung
Bei der Verwendung eines Ablaufs für Clientanmeldeinformationen mit der Testkonsole des Entwicklerportals ist besondere Vorsicht geboten. Siehe Sicherheitsüberlegungen.
Schlüsselkonfigurationen:
Konfiguration | Verweis |
---|---|
Richten Sie Produkte in Azure API Management ein, um die Kombinationen von APIs darzustellen, die Community-Entwicklern zur Verfügung stehen. Richten Sie Abonnements ein, damit Entwickler die APIs nutzen können. |
Tutorial: Erstellen und Veröffentlichen eines Produkts Abonnements in Azure API Management |
Konfigurieren Sie den Community-Entwicklerzugriff auf das Entwicklerportal mithilfe von Azure AD B2C. Azure AD B2C kann dann so konfiguriert werden, dass es mit einem oder mehreren nachgelagerten Identitätsanbietern für soziale Medien funktioniert. | Autorisieren von Entwicklerkonten mithilfe von Azure Active Directory B2C in Azure API Management |
Richten Sie die Testkonsole im Entwicklerportal ein, um ein gültiges OAuth 2.0-Token für die Back-End-API mithilfe des Flusses für Clientanmeldeinformationen zu erhalten. | Autorisieren der Testkonsole des Entwicklerportals durch Konfigurieren der OAuth 2.0-Benutzerautorisierung Passen Sie die in diesem Artikel gezeigten Konfigurationsschritte so an, dass der Grant-Flow für Clientanmeldeinformationen anstelle des Grant-Flows für Autorisierungscodes verwendet wird. |
Gehen Sie noch einen Schritt weiter, indem Sie Benutzerregistrierung oder Produktabonnement delegieren und den Prozess um Ihre eigene Logik erweitern.
Nächste Schritte
- Erfahren Sie mehr über Authentifizierung und Autorisierung in der Microsoft Identity Platform.
- Erfahren Sie, wie Sie OWASP-API-Sicherheitsbedrohungen mithilfe von API Management mindern.