Freigeben über


Azure Communication Identity-Clientbibliothek für JavaScript– Version 1.3.1

Die Identitätsbibliothek wird zum Verwalten von Benutzern und Token für Azure Communication Services verwendet.

Erste Schritte

Voraussetzungen

Installieren von

npm install @azure/communication-identity

Browserunterstützung

JavaScript-Paket

Um diese Clientbibliothek im Browser verwenden zu können, müssen Sie zunächst einen Bundler verwenden. Ausführliche Informationen dazu finden Sie in unserer Bündelungsdokumentation.

Wichtige Begriffe

Clients

Stellt CommunicationIdentityClient Methoden zum Verwalten von Benutzern und deren Token bereit.

Beispiele

Authentication

Sie können einen Schlüssel und/oder eine Verbindungszeichenfolge aus Ihrer Communication Services-Ressource im Azure-Portal abrufen. Sobald Sie über einen Schlüssel verfügen, können Sie sich CommunicationIdentityClient mit einer der folgenden Methoden authentifizieren:

Erstellen KeyCredential mit AzureKeyCredential vor dem Initialisieren des Clients

import { AzureKeyCredential } from "@azure/core-auth";
import { CommunicationIdentityClient } from "@azure/communication-identity";

const credential = new AzureKeyCredential(KEY);
const client = new CommunicationIdentityClient(ENDPOINT, credential);

Verwenden eines Verbindungszeichenfolge

import { CommunicationIdentityClient } from "@azure/communication-identity";

const connectionString = `endpoint=ENDPOINT;accessKey=KEY`;
const client = new CommunicationIdentityClient(connectionString);

Verwenden eines TokenCredential

import { DefaultAzureCredential } from "@azure/identity";
import { CommunicationIdentityClient } from "@azure/communication-identity";

const credential = new DefaultAzureCredential();
const client = new CommunicationIdentityClient(ENDPOINT, credential);

Wenn Sie einen Schlüssel zum Initialisieren des Clients verwenden, müssen Sie auch den entsprechenden Endpunkt angeben. Sie können diesen Endpunkt über Ihre Communication Services-Ressource im Azure-Portal abrufen.

Verbrauch

Erstellen einer instance von CommunicationIdentityClient

import { CommunicationIdentityClient } from "@azure/communication-identity";

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Erstellen eines neuen Benutzers

Verwenden Sie die createUser -Methode, um einen neuen Benutzer zu erstellen.

const user = await client.createUser();

Erstellen und Aktualisieren eines Benutzertokens

Verwenden Sie die getToken -Methode, um ein Token für einen vorhandenen Benutzer auszustellen oder zu aktualisieren. Die -Methode akzeptiert auch eine Liste von Kommunikationstokenbereichen. Zu den Bereichsoptionen gehören:

  • chat (Verwenden Sie dies für den Vollzugriff auf Chat-APIs.
  • voip (Verwenden Sie dies für den Vollzugriff auf aufrufende APIs.
  • chat.join (Zugriff auf Chat-APIs, aber ohne die Autorisierung zum Erstellen, Löschen oder Aktualisieren von Chatthreads)
  • chat.join.limited (Eine eingeschränktere Version von chat.join, die das Hinzufügen oder Entfernen von Teilnehmern nicht zulässt)
  • voip.join (Zugriff auf aufrufende APIs, aber ohne die Autorisierung zum Starten neuer Aufrufe)
let { token } = await client.getToken(user, ["chat"]);

Um das Benutzertoken zu aktualisieren, geben Sie ein weiteres Token für denselben Benutzer aus.

let { token } = await client.getToken(user, ["chat"]);

Erstellen eines Benutzertokens mit benutzerdefiniertem Ablauf

Es ist auch möglich, ein Kommunikationsidentitäts-Zugriffstoken zu erstellen, indem Sie die Ablaufzeit anpassen. Die Gültigkeitsdauer des Tokens muss innerhalb des Bereichs [60.1440] Minuten liegen. Wenn nicht angegeben, wird der Standardwert 1440 Minuten (24 Stunden) verwendet.

const tokenOptions: GetTokenOptions = { tokenExpiresInMinutes: 60 };
let { token } = await client.getToken(user, ["chat"], tokenOptions);

Erstellen eines Benutzers und eines Tokens in einer einzelnen Anforderung

Verwenden Sie createUserAndToken zur Vereinfachung, um einen neuen Benutzer zu erstellen und ein Token mit einem Funktionsaufruf auszustellen. Dies wird in eine einzelne Webanforderung übersetzt, anstatt zuerst einen Benutzer zu erstellen und dann ein Token auszugeben.

let { user, token } = await client.createUserAndToken(["chat"]);

Erstellen eines Benutzers und eines Tokens mit benutzerdefiniertem Ablauf in einer einzelnen Anforderung

Es ist auch möglich, ein Kommunikationsidentitäts-Zugriffstoken zu erstellen, indem Sie die Ablaufzeit anpassen. Die Gültigkeitsdauer des Tokens muss innerhalb des Bereichs [60.1440] Minuten liegen. Wenn nicht angegeben, wird der Standardwert 1440 Minuten (24 Stunden) verwendet.

const userAndTokenOptions: CreateUserAndTokenOptions = { tokenExpiresInMinutes: 60 };
let { user, token } = await client.createUserAndToken(["chat"], userAndTokenOptions);

Widerrufen von Token für einen Benutzer

Verwenden Sie die revokeTokens -Methode, um alle ausgestellten Token für einen Benutzer zu widerrufen.

await client.revokeTokens(user);

Löschen eines Benutzers

Verwenden Sie die deleteUser -Methode, um einen Benutzer zu löschen.

await client.deleteUser(user);

Austauschen des Azure AD-Zugriffstokens eines Teams-Benutzers gegen ein Kommunikationszugriffstoken

Verwenden Sie getTokenForTeamsUser die -Methode, um ein Azure AD-Zugriffstoken eines Teams-Benutzers gegen einen neuen CommunicationAccessToken mit einer übereinstimmenden Ablaufzeit auszutauschen.

await client.getTokenForTeamsUser({
  teamsUserAadToken: "<aad-access-token-of-a-teams-user>",
  clientId: "<cliend-id-of-an-aad-application>",
  userObjectId: "<aad-object-id-of-a-teams-user>",
});

Problembehandlung

Nächste Schritte

Ausführliche Beispiele zur Verwendung dieser Bibliothek finden Sie im Beispielverzeichnis .

Mitwirken

Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie die Anleitung für Mitwirkende, um mehr darüber zu erfahren, wie Sie den Code erstellen und testen können.

Aufrufe