Freigeben über


Grundlagen der Bot Framework-Authentifizierung

GILT FÜR: SDK v4

Häufig muss ein Bot im Namen des Benutzers auf geschützte Ressourcen zugreifen, z. B. auf ein E-Mail-Konto. Um dies zu tun, muss der Bot basierend auf den Anmeldeinformationen des Benutzers autorisiert werden. Davor muss der Benutzer zuerst authentifiziert werden. Der Bot muss eine bekannte Entität sein, d. h. er muss im Azure AI Bot Service-Kontext authentifiziert werden. Dies geschieht, bevor der Bot autorisiert wird, im Auftrag des Benutzers zu arbeiten.

Sehen wir uns an, ob wir dieses Bündel aufheben können, indem wir mit einer Vogelperspektive des Bot Framework-Authentifizierungskontexts beginnen.

Bot-Authentifizierungskontext

  • Wenn Sie einen Bot in Azure über eine Azure Bot-Ressource registrieren, erstellt Azure eine Microsoft Entra ID-Registrierungsanwendung. Diese Anwendung verfügt über eine App-ID (MicrosoftAppId) und einen geheimen Clientschlüssel (MicrosoftAppPassword). Sie verwenden diese Werte in den Bot-Konfigurationsdateien, wie unten beschrieben.

  • Microsoft Entra ID ist ein Cloudidentitätsdienst, mit dem Sie Anwendungen erstellen können, die Benutzer sicher mit Branchenstandardprotokollen wie OAuth 2.0 anmelden. Sie erstellen eine Active Directory-Anwendung und verwenden dessen App-ID und das Zugehörige Kennwort , um einen Identitätsanbieter auszuwählen und eine Authentifizierungsverbindung zu generieren. Sie fügen diese Verbindung zu Ihrer Bot-Ressource hinzu. Außerdem fügen Sie den Verbindungsnamen in den Bot-Konfigurationsdateien wie unten beschrieben hinzu.

  • Ein Bot wird durch seine Azure Bot-Ressourcen-App-ID und sein Kennwort identifiziert. Sie fügen die zugehörigen Werte in der Konfigurationsdatei des Bots oder einem geheimen Schlüssel-Manager hinzu. Sie fügen auch den Verbindungsnamen hinzu. Der Bot verwendet ein Token basierend auf der App-ID und dem Kennwort für den Zugriff auf geschützte Ressourcen. Der Bot verwendet verschiedene Token basierend auf der Authentifizierungsverbindung, um auf die geschützten Ressourcen des Benutzers zuzugreifen.

Bot-Authentifizierung und -Autorisierung

Im Folgenden sind die wichtigsten Schritte zum Authentifizieren eines Bots und zum Autorisieren des Zugriffs auf die geschützten Ressourcen des Benutzers aufgeführt:

  1. Erstellen Sie eine Botkanalregistrierungsanwendung.
  2. Fügen Sie der Bot-Konfigurationsdatei die Registrierungs-App-ID und das Kennwort hinzu. Dadurch kann der Bot authentifiziert werden, um auf geschützte Ressourcen zuzugreifen.
  3. Erstellen Sie eine Microsoft Entra ID-Anwendung, um einen Identitätsanbieter auszuwählen, um den Benutzer zu authentifizieren.
  4. Erstellen Sie eine Authentifizierungsverbindung, und fügen Sie sie den Kanalregistrierungseinstellungen hinzu.
  5. Fügen Sie den Verbindungsnamen zu den Konfigurationsdateien des Bots hinzu. Dadurch kann der Bot berechtigt sein, auf die geschützten Ressourcen des Benutzers zuzugreifen.

Ein vollständiges Beispiel finden Sie unter Authentifizierung zu einem Bot hinzufügen.

Bewährte Methoden

  • Halten Sie die Registrierung der Microsoft Entra ID-App auf ihren ursprünglichen Zweck als Dienst-zu-Dienst-Anwendung beschränkt.
  • Erstellen Sie eine zusätzliche Microsoft Entra ID-App für jeden Benutzer zur Dienstauthentifizierung, um eine endlichere Kontrolle über die Deaktivierung von Authentifizierungsverbindungen, das Rollen von geheimen Schlüsseln oder die erneute Nutzung der Microsoft Entra ID-App mit anderen Anwendungen zu erhalten.

Einige der Probleme, die auftreten, wenn Sie auch die Microsoft Entra ID-Registrierungs-App für die Authentifizierung verwenden, sind:

  • Wenn das an die Microsoft Entra ID-App-Registrierung angefügte Zertifikat erneuert werden muss, wirkt sich das auf Benutzer aus, die sich mit anderen Microsoft Entra ID-Diensten mithilfe des Zertifikats authentifiziert haben.
  • Im Allgemeinen wird ein einzelner Fehlerpunkt und eine Steuerung für alle Authentifizierungsaktivitäten mit dem Bot erstellt.

Die folgenden Artikel enthalten ausführliche Informationen und Beispiele zur Authentifizierung im Bot Framework. Betrachten Sie zunächst die Authentifizierungstypen und dann Identitätsanbieter.

Artikel BESCHREIBUNG
Authentifizierungstypen Beschreibt die beiden Bot Framework-Authentifizierungstypen und die verwendeten Token.
Identitätsanbieter Beschreibt die Verwendung von Identitätsanbietern. Sie ermöglichen es Ihnen, Anwendungen zu erstellen, die Benutzer sicher mit Branchenstandardprotokollen wie OAuth2.0 anmelden.
Benutzerauthentifizierung Beschreibt die Authentifizierung des Benutzers und das zugehörige Token, um einen Bot zum Ausführen von Aufgaben im Namen des Benutzers zu autorisieren.
Einmaliges Anmelden Beschreibt die Einzelbenutzerauthentifizierung für den Zugriff auf mehrere geschützte Ressourcen.
Registrieren eines Bots bei Azure Zeigt, wie ein Bot beim Azure AI Bot Service registriert wird.
Bot Framework-Sicherheitsrichtlinien Beschreibt die Sicherheit im Allgemeinen und wie sie für das Bot Framework gilt.
Hinzufügen der Authentifizierung zu einem Bot Zeigt, wie Sie die Registrierung eines Botkanals erstellen, eine Authentifizierungsverbindung erstellen und den Code vorbereiten.
Single Sign-On zu einem Bot hinzufügen Zeigt, wie man einem Bot eine Single-Sign-On-Authentifizierung hinzufügt.