Tuesday, February 22, 2022

Build a trusted authentication service for Azure Communication Services using Azure Active Directory

We’re releasing a new service sample to help you build secure voice, video, and chat applications. This sample provides you with an easy to deploy, trusted authentication service to generate Azure Communication Services identities and access tokens. It is available for both node.js and C#. 

 

Azure Communication Services is designed with a bring-your-own-identity (BYOI) architecture. Identity and sign-on experiences are core to your unique application. Apps like LinkedIn have their own end-user identity system, while healthcare apps may use identity providers as part of existing middleware, and other apps may use 3rd party providers such as Facebook. 

 

We’ve designed the ACS identity system to be simple and generic, so you have the flexibility to build whatever experience you want. 

 

This new sample uses Azure App Service to authenticate users with Azure Active Directory (AAD), maps those users to ACS identities using Graph as storage, and finally generates ACS tokens when needed. We chose AAD for this sample because it’s a popular access management back-end, recognized for its security and scalability. It also integrates with 3rd party identity providers and OpenID interfaces. But you can use this sample as a launching point for integrating whatever identity provider or external system you want. 

 

The sample provides developers a turn-key service which uses the Azure Communication Service Identity SDK to create and delete users, and generate, refresh, and revoke access tokens.  The data flows for this sample are diagrammed below, but there is a lot more detail in GitHub with both node.js and C# repositories.  An Azure Resource Manager (ARM) template is provided that generates the Azure subscription and automate deployment with a few clicks. 

ddematheu_0-1644947264485.png

 

This identity service is only one component of a calling or chat application. Samples and documentation for other components and the underlying APIs are below. 

 

Concept 

SDKs 

Samples

Identity

Calling

Chat

UI Library 

Calling

Chat

Authentication Service 

Calling Client 

Chat Client 

 

Please hit us up in the comments or Microsoft Q&A if you have questions about building apps! 

 

Posted at https://sl.advdat.com/3BVaOHvhttps://sl.advdat.com/3BVaOHv