Udostępnij za pośrednictwem


Biblioteka klienta usługi Azure Communication Identity dla języka JavaScript — wersja 1.3.1

Biblioteka tożsamości służy do zarządzania użytkownikami i tokenami dla Azure Communication Services.

Wprowadzenie

Wymagania wstępne

Instalowanie

npm install @azure/communication-identity

Obsługa przeglądarki

Pakiet JavaScript

Aby użyć tej biblioteki klienta w przeglądarce, najpierw musisz użyć pakietu. Aby uzyskać szczegółowe informacje na temat tego, jak to zrobić, zapoznaj się z naszą dokumentacją dotyczącą tworzenia pakietów.

Kluczowe pojęcia

Klienci

Zapewnia CommunicationIdentityClient metody zarządzania użytkownikami i ich tokenami.

Przykłady

Authentication

Klucz i/lub parametry połączenia można uzyskać z zasobu usługi Communication Services w witrynie Azure Portal. Po utworzeniu klucza możesz uwierzytelnić element CommunicationIdentityClient przy użyciu dowolnej z następujących metod:

Utwórz KeyCredential za pomocą AzureKeyCredential przed zainicjowaniem klienta

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

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

Korzystanie z parametry połączenia

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

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

Korzystanie z elementu TokenCredential

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

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

Jeśli używasz klucza do inicjowania klienta, musisz również podać odpowiedni punkt końcowy. Ten punkt końcowy można uzyskać z zasobu usług Communication Services w witrynie Azure Portal.

Użycie

Tworzenie wystąpienia klasy CommunicationIdentityClient

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

const client = new CommunicationIdentityClient(CONNECTION_STRING);

Tworzenie nowego użytkownika

createUser Użyj metody , aby utworzyć nowego użytkownika.

const user = await client.createUser();

Tworzenie i odświeżanie tokenu użytkownika

getToken Użyj metody , aby wydać lub odświeżyć token dla istniejącego użytkownika. Metoda przyjmuje również listę zakresów tokenu komunikacji. Opcje zakresu obejmują:

  • chat (Użyj tego w celu uzyskania pełnego dostępu do interfejsów API czatu)
  • voip (Użyj tego w celu uzyskania pełnego dostępu do wywoływanych interfejsów API)
  • chat.join (Dostęp do interfejsów API czatu, ale bez autoryzacji do tworzenia, usuwania lub aktualizowania wątków czatu)
  • chat.join.limited (Bardziej ograniczona wersja pliku chat.join, która nie zezwala na dodawanie lub usuwanie uczestników)
  • voip.join (Dostęp do wywoływanych interfejsów API, ale bez autoryzacji do uruchamiania nowych wywołań)
let { token } = await client.getToken(user, ["chat"]);

Aby odświeżyć token użytkownika, wydaj inny token z tym samym użytkownikiem.

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

Tworzenie tokenu użytkownika z niestandardowym wygaśnięciem

Istnieje również możliwość utworzenia tokenu dostępu do tożsamości komunikacji przez dostosowanie czasu wygaśnięcia. Okres ważności tokenu musi należeć do zakresu [60 1440 minut]. Jeśli nie zostanie podana, zostanie użyta wartość domyślna 1440 minut (24 godziny).

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

Tworzenie użytkownika i tokenu w jednym żądaniu

Dla wygody użyj polecenia createUserAndToken , aby utworzyć nowego użytkownika i wydać token z jednym wywołaniem funkcji. Przekłada się to na jedno żądanie internetowe w przeciwieństwie do tworzenia użytkownika, a następnie wystawiania tokenu.

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

Tworzenie użytkownika i tokenu z niestandardowym wygaśnięciem w jednym żądaniu

Istnieje również możliwość utworzenia tokenu dostępu do tożsamości komunikacji przez dostosowanie czasu wygaśnięcia. Okres ważności tokenu musi należeć do zakresu [60 1440 minut]. Jeśli nie zostanie podana, zostanie użyta wartość domyślna 1440 minut (24 godziny).

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

Cofanie tokenów dla użytkownika

revokeTokens Użyj metody , aby odwołać wszystkie wystawione tokeny dla użytkownika.

await client.revokeTokens(user);

Usuwanie użytkownika

deleteUser Użyj metody , aby usunąć użytkownika.

await client.deleteUser(user);

Wymiana Azure AD tokenu dostępu użytkownika usługi Teams dla tokenu dostępu do komunikacji

Użyj getTokenForTeamsUser metody, aby wymienić token dostępu Azure AD użytkownika usługi Teams dla nowego CommunicationAccessToken z pasującym czasem wygaśnięcia.

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>",
});

Rozwiązywanie problemów

Następne kroki

Zapoznaj się z katalogiem samples , aby uzyskać szczegółowe przykłady dotyczące sposobu korzystania z tej biblioteki.

Współtworzenie

Jeśli chcesz współtworzyć tę bibliotekę, przeczytaj przewodnik współtworzenia , aby dowiedzieć się więcej na temat sposobu kompilowania i testowania kodu.

Wrażenia