Model identit

Azure Communication Services je služba nezávislá na identitě, která nabízí několik výhod:

  • Opakovaně používejte existující identity ze systému správy identit a jednoduše je mapujte s identitami Azure Communication Services.
  • Poskytuje flexibilitu integrace, protože model nezávislý na identitě dobře funguje s existujícím systémem identit.
  • Data uživatele, jako je jeho jméno, můžete ponechat soukromá, protože je nemusíte duplikovat ve službách Azure Communication Services.

Model identit azure Communication Services funguje se dvěma klíčovými koncepty.

Identita uživatele / mapování

Jednoznačně identifikuje uživatele prostřednictvím identifikátoru uživatele, který je generován službou Azure Communication Services při vytvoření uživatele. Externí identifikátory, jako jsou telefonní čísla, uživatelé, zařízení, aplikace a identifikátory GUID, se nedají použít pro identitu ve službě Azure Communication Services. Identity uživatelů služby Azure Communication Service můžete vytvářet zdarma. Poplatky se účtují pouze v případě, že uživatel využívá komunikační režimy, jako je chat nebo hovor. Identitu uživatelů je možné mapovat na identitu uživatele služby Azure Communication Services v konfiguraci 1:1, 1:N, N:1, N:N. Uživatel se může účastnit více komunikačních relací pomocí více zařízení současně. Mapování mezi identitou uživatele Služby Azure Communication Services a privátní identitou uživatele zákazníka se udržuje a udržuje zákazníkem. Zákazníci můžou například do tabulky uživatelů přidat CommunicationServicesId sloupec, do které uloží přidruženou identitu služby Azure Communication Services.

Přístupové tokeny

Po vytvoření identity uživatele se uživateli udělí možnost účastnit se komunikace pomocí chatu nebo volání pomocí přístupových tokenů. Do chatu se například může účastnit jenom uživatel s tokenem chatu a uživatel s tokenem VoIP se může účastnit volání VoIP. Uživatel může mít současně více tokenů. Azure Communication Services podporuje více typů tokenů pro účty uživatelů, kteří vyžadují úplný přístup a omezený přístup. Přístupové tokeny mají následující vlastnosti.

Vlastnost Popis
Identita Jedinečně identifikuje token.
Vypršení platnosti Přístupový token je platný po dobu od 1 do 24 hodin. Po vypršení platnosti se přístupový token zneplatní a nedá se použít pro přístup k žádným primitivním. Pokud chcete vygenerovat token s vlastní platností, zadejte požadovanou dobu platnosti při generování tokenu. Pokud není zadána žádná vlastní platnost, token bude platný po dobu 24 hodin. Doporučujeme používat krátké tokeny životnosti pro jednorázové schůzky a delší životnost tokenů pro agenty, kteří používají aplikaci po delší dobu.
Obor Parametr oboru definuje neprázdnou sadu primitiv (Chat/VoIP), kterou je možné použít.

Přístupový token je webový token JSON (JWT) a má ochranu integrity. To znamená, že jeho deklarace nelze po vydání změnit. Ruční změna vlastností, jako je identita, vypršení platnosti nebo obory, zneplatní přístupový token. Pokud jsou primitiva použita s neplatnými tokeny, přístup bude odepřen primitivům. Azure Communication Services podporuje pro přístupové tokeny následující obory.

Obory tokenů chatu

Podporují se tři typy oborů tokenů chatu. Oprávnění pro každý token jsou popsaná níže.

  • chat
  • chat.join
  • chat.join.limited
Možnosti / rozsah tokenů chat chat.join chat.join.limited
Vytvoření vlákna chatu Y N N
Aktualizace vlákna chatu s ID Y N N
Odstranění vlákna chatu s ID Y N N
Přidání účastníka do vlákna chatu Y Y N
Odebrání účastníka z vlákna chatu Y Y N
Získání vláken chatu Y Y Y
Získání vlákna chatu s ID Y Y Y
Získat ReadReceipt Y Y Y
Vytvoření readReceipt Y Y Y
Vytvoření zprávy pro vlákno chatu s ID Y Y Y
Získání zprávy s ID zprávy Y Y Y
Aktualizace vlastní zprávy pomocí ID zprávy Y Y Y
Odstranění vlastní zprávy s ID zprávy Y Y Y
Indikátor zadávání textu Y Y Y
Získání účastníka pro ID vlákna Y Y Y

Obory tokenů VoIP

Podporují se dva typy oborů tokenů VoIP. Oprávnění pro každý token jsou popsaná níže.

  • Voip
  • voip.join
Možnosti / rozsah tokenů Voip voip.join
Zahájení volání VoIP Y N
Spuštění hovoru VoIP ve virtuálních místnostech, když už je uživatel pozvaný do místnosti Y Y
Připojení k volání VoIP inProgress Y Y
Připojte se k hovoru VoIP inProgress ve virtuálních místnostech, když už je uživatel pozvaný do místnosti. Y Y
Všechny ostatní operace volání, jako je ztlumení nebo zrušení ztlumení, sdílení obrazovky atd. Y Y
Všechny ostatní operace v hovoru, jako je ztlumení nebo zrušení ztlumení, sdílení obrazovky atd. ve virtuálních místnostech Určeno rolí uživatele Určeno rolí uživatele

Odvolání nebo aktualizace přístupového tokenu

  • Knihovnu identit služby Azure Communication Services je možné použít k odvolání přístupového tokenu před vypršením jeho platnosti. Odvolání tokenu není okamžité. Rozšíření může trvat až 15 minut.
  • Odebrání identity, prostředku nebo předplatného odvolá všechny přístupové tokeny.
  • Pokud chcete odebrat schopnost uživatele přistupovat ke konkrétním funkcím, odvolejte všechny přístupové tokeny. Pak vytvořte nový přístupový token, který má omezenější sadu oborů.
  • Obměna přístupových klíčů odvolá všechny aktivní přístupové tokeny vytvořené pomocí bývalého přístupového klíče. V takovém případě všechny identity ztratí přístup ke službě Azure Communication Services a musí vydávat nové přístupové tokeny.

Důležité informace

  • Doporučujeme ve vaší službě na straně serveru vydávat přístupové tokeny, ne v aplikaci klienta. Důvodem je, že vydávání vyžaduje přístupový klíč nebo ověřování Microsoft Entra. Sdílení tajných kódů s aplikací klienta se nedoporučuje z bezpečnostních důvodů.
  • Klientská aplikace by měla používat důvěryhodný koncový bod služby, který může ověřovat klienty. Koncový bod by měl za něj vydávat přístupové tokeny. Další informace najdete v tématu Architektura klienta a serveru.
  • Pokud do mezipaměti ukládáte přístupové tokeny do záložního úložiště, doporučujeme použít šifrování. Přístupový token je citlivá data. Dá se použít pro škodlivou aktivitu, pokud není chráněná. Někdo, kdo má přístupový token, může spustit sadu SDK a získat přístup k rozhraní API. Přístupné rozhraní API je omezené jenom na základě oborů, které přístupový token má.
  • Doporučujeme vydávat přístupové tokeny, které mají pouze požadované obory.

Další kroky