Web- und Kanalsicherheit von Direct Line konfigurieren

Wichtig

Power Virtual Agents-Fähigkeiten und -Funktionen sind jetzt Teil von Microsoft Copilot Studio nach erheblichen Investitionen in generative KI und verbesserte Integrationen in Microsoft Copilot.

Einige Artikel und Screenshots beziehen sich möglicherweise auf Power Virtual Agents während wir Dokumentation und Schulungsinhalte aktualisieren.

Wenn Sie einen Microsoft Copilot Studio-Copiloten erstellen, ist er in den Kanälen Demo-Website und Benutzerdefinierte Website sofort für alle verfügbar, die die Copiloten-ID kennen. Diese Kanäle sind standardmäßig verfügbar und es ist keine Konfiguration erforderlich.

Für die Microsoft Teams-App können Sie erweiterte Sicherheitsoptionen für Webkanäle konfigurieren.

Anmerkung

Wenn Sie nur eine Teams Lizenz haben, können Sie keine Geheimnisse generieren, um einen sicheren Zugriff zu ermöglichen. Sichere Zugriffstoken werden automatisch für Sie erstellt und der sichere Zugriff ist standardmäßig aktiviert.

Benutzende können die Copiloten-ID direkt über Microsoft Copilot Studio finden oder indem Sie sie von jemandem erhalten. Je nach der Fähigkeit des Copiloten und der Sensitivität ist dies jedoch möglicherweise nicht erwünscht.

Mit Direct Line-basierter Sicherheit können Sie den Zugriff nur auf Standorte aktivieren, die Sie steuern, indem Sie den gesicherten Zugriff mit Direct Line-Geheimnissen oder Tokens aktivieren.

Sie können auch Geheimnisse austauschen und neu generieren sowie Tokens aktualisieren und den gesicherten Zugriff einfach deaktivieren, wenn Sie ihn nicht mehr verwenden möchten.

Anmerkung

Microsoft Copilot Studio verwendet den Bot Framework Direct Line-Kanal, um Ihre Webseite oder App mit dem Copiloten zu verbinden.

Sicherheit des Webkanals aktivieren oder deaktivieren

Sie können die Verwendung von Geheimnissen und Tokens für jeden einzelnen Copiloten erzwingen.

Sobald diese Option aktiviert ist, muss der Client für Kanäle seine Anforderungen entweder mit einem Geheimnis oder durch Verwenden eines Tokens, das mithilfe des Geheimnisses generiert wird authentifizieren, das zur Laufzeit abgerufen wird.

Jeder Zugriff auf den Copiloten, der diese Sicherheitsmaßnahme nicht bietet, funktioniert nicht.

  1. Wählen Sie im Navigationsmenü unter Einstellungen die Option Sicherheit. Wählen Sie dann die Kachel Webkanalsicherheit aus.

    Screenshot, auf dem die Webkanalsicherheit auf dem Flyout „Einstellungen“ hervorgehoben ist.

  2. Schalten Sie Gesicherten Zugang erforderlich machen auf Aktiviert.

    Screenshot mit der Seite „Webkanalsicherheit“.

Warnung

Sobald „Gesicherten Zugriff erforderlich machen“ aktiviert oder deaktiviert ist, kann es bis zu zwei Stunden dauern, bis das System die Einstellungen weitergibt und sie wirksam werden. Bis dahin bleibt die vorherige Einstellung wirksam. Sie brauchen den Copiloten nicht zu veröffentlichen, damit diese Änderung wirksam wird.

Sie sollten vorausplanen, um zu vermeiden, dass Ihr Copilot unbeabsichtigt ausgesetzt wird.

Wenn Sie die Sicherheitsoption für den Webkanal deaktivieren müssen, können Sie dies durch Umschalten von Gesicherten Zugriff erforderlich machen auf Deaktiviert tun. Das Deaktivieren des gesicherten Zugriffs kann bis zu zwei Stunden dauern.

Screenshot mit einer Bestätigungsnachricht bei der Deaktivierung des gesicherten Zugriffs, die besagt, dass diese Aktion die Demo-Website und alle Direct Line-Kanäle, die kein Geheimnis oder Token verwenden, verfügbar macht. Es kann bis zu zwei Stunden dauern, bis diese Aktion in Kraft tritt.

Verwenden von Geheimnissen oder Tokens

Wenn Sie eine Service-to-Service-App erstellen, ist es möglicherweise am einfachsten, das Geheimnis in den Anforderungen des Autorisierungsheaders anzugeben.

Wenn Sie eine App schreiben, in der der Client in einem Webbrowser oder einer mobilen App ausgeführt wird, oder wenn der Code für Kunden sichtbar sein könnte, müssen Sie Ihr Geheimnis gegen ein Token eintauschen. Wenn Sie keinen Token verwenden, kann Ihr Geheimnis beeinträchtigt sein. Geben Sie das Geheimnis im Autorisierungsheader an, wenn Sie die Anforderung zum Erwerb des Tokens in Ihrem Dienst stellen.

Tokens funktionieren nur für eine einzelne Unterhaltung und verfallen, sofern sie nicht aktualisiert werden.

Wählen Sie das Sicherheitsmodell, das für Ihre Situation am besten geeignet ist.

Warnung

Wir raten dringend davon ab, das Geheimnis in Code aufzudecken, der im Browser ausgeführt wird, entweder fest codiert oder über einen Netzwerkanruf übertragen.

Der Erwerb des Tokens mithilfe des Geheimnisses in Ihrem Servicecode ist der sicherste Weg, um Ihren Microsoft Copilot Studio-Copiloten zu schützen.

Geheimnisse abrufen

Sie benötigen das Geheimnis, damit Sie es in den Autorisierungsheaderanforderungen Ihrer App oder ähnlichem angeben können.

  1. Wählen Sie im Navigationsmenü unter Einstellungen die Option Sicherheit. Wählen Sie dann die Kachel Webkanalsicherheit aus.

  2. Wählen Sie Kopieren entweder für Geheimnis 1 oder Geheimnis 2, um es in die Zwischenablage zu kopieren. Wählen Sie das Sichtbarkeitssymbol Symbol für die Sichtbarkeit., um das Geheimnis enthüllen. Eine Warnmeldung erscheint, bevor Sie es aufdecken können.

Geheimnisse austauschen

Wenn Sie das von Ihrem Copiloten verwendete Geheimnis ändern müssen, können Sie dies ohne Ausfallzeiten oder Unterbrechungen tun.

Microsoft Copilot Studio bietet Ihnen zwei Geheimnisse, die gleichzeitig funktionieren. Sie können das verwendete Geheimnis gegen das andere austauschen. Sobald die Geheimnisse ausgetauscht wurden und alle Benutzer über das neue Geheimnis verbunden sind, können Sie das Geheimnis sicher neu generieren.

Geheimnis erneut generieren

Um ein Geheimnis erneut zu generieren, wählen Sie Erneut generieren neben dem Geheimnis aus.

Warnung

Alle Benutzenden, die mit dem ursprünglichen Geheimnis oder einem von diesem Geheimnis erhaltenen Token verbunden sind, werden getrennt.

Ein Token generieren

Sie können ein Token generieren, das beim Starten einer einzelnen Copiloten-Unterhaltung verwendet werden kann. Weitere Informationen finden Sie im Abschnitt Direct Line-Token erhalten im Artikel Copiloten mobilen oder benutzerdefinierten Apps hinzufügen.

  1. Geheimnis abrufen.

  2. Stellen Sie die folgende Anforderung in Ihrem Servicecode, um das Geheimnis gegen ein Token auszutauschen. Ersetzen Sie <SECRET> mit dem Wert des Geheimnisses, das Sie in Schritt 1 erhalten haben.

    POST https://directline.botframework.com/v3/directline/tokens/generate
    Authorization: Bearer <SECRET>
    

Die folgenden Snippets enthalten Beispiele der generierten Tokenanforderung und der Antwort.

Beispielerstellung für eine Token-Anforderung

POST https://directline.botframework.com/v3/directline/tokens/generate
Authorization: Bearer RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0

Beispielerstellung für eine Token-Antwort

HTTP/1.1 200 OK
[other headers]
{
  "conversationId": "abc123",
  "token": "RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn",
  "expires_in": 1800
}

Wenn die Anforderung erfolgreich ist, enthält die Antwort ein Token, das für eine Unterhaltung gültig ist, und einen expires_in-Wert, der die Anzahl der Sekunden angibt, bis das Token abläuft.

Damit das Token nützlich bleibt, müssen Sie das Token aktualisieren, bevor es abläuft.

Token aktualisieren

Ein Token kann beliebig oft aktualisiert werden, solange es nicht abgelaufen ist.

Ein abgelaufenes Token kann nicht aktualisiert werden.

Geben Sie zum Aktualisieren eines Tokens die folgende Anforderung aus und ersetzen Sie <TOKEN TO BE REFRESHED> mit dem Token, das Sie aktualisieren möchten.

POST https://directline.botframework.com/v3/directline/tokens/refresh
Authorization: Bearer <TOKEN TO BE REFRESHED>

Die folgenden Snippets enthalten Beispiele für die Anforderung zum Aktualsieren von Token und dessen Antwort.

Beispiel für eine Aktualisierungsanforderung

POST https://directline.botframework.com/v3/directline/tokens/refresh
Authorization: Bearer CurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn

Beispiel für eine Aktualisierungsantwort

Wenn die Anforderung erfolgreich ist, enthält die Antwort ein neues Token, das für dieselbe Unterhaltung gültig ist, wie das vorherige Token, und einen expires_in-Wert, der die Anzahl der Sekunden angibt, bis das neue Token abläuft.

Damit das neue Token nützlich bleibt, müssen Sie das Token erneut aktualisieren, bevor es abläuft.

HTTP/1.1 200 OK
[other headers]
{
  "conversationId": "abc123",
  "token": "RCurR_XV9ZA.cwA.BKA.y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xniaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0",
  "expires_in": 1800
}

Weitere Informationen zum Aktualisieren eines Tokens finden Sie im Abschnitt Direct Line-Token aktualisieren im Artikel Direct Line-API – Authentifizierung.