def get_relay_config(self): from azure.communication.networktraversal import ( CommunicationRelayClient ) from azure.communication.identity import ( CommunicationIdentityClient ) if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential endpoint, _ = parse_connection_str(self.connection_string) identity_client = CommunicationIdentityClient(endpoint, DefaultAzureCredential()) relay_client = CommunicationRelayClient(endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string(self.connection_string) relay_client = CommunicationRelayClient.from_connection_string(self.connection_string) print("Creating new user") user = identity_client.create_user() print("User created with id:" + user.properties.get('id')) print("Getting relay configuration") relay_configuration = relay_client.get_relay_configuration(user=user) for iceServer in relay_configuration.ice_servers: print("Icer server:") print(iceServer)
def create_identity_and_get_token(resource_endpoint): client = CommunicationIdentityClient(resource_endpoint, credential) user = client.create_user() token_response = client.get_token(user, scopes=["voip"]) return token_response
def create_user(self): from azure.communication.identity import CommunicationIdentityClient if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential identity_client = CommunicationIdentityClient(self.endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string(self.connection_string) print("Creating new user") user = identity_client.create_user() print("User created with id:" + user.identifier)
def test_create_user_from_managed_identity(self, connection_string): endpoint, access_key = parse_connection_str(connection_string) from devtools_testutils import is_live if not is_live(): credential = FakeTokenCredential() else: credential = DefaultAzureCredential() identity_client = CommunicationIdentityClient(endpoint, credential) user = identity_client.create_user() assert user.identifier is not None
def delete_user(self): from azure.communication.identity import CommunicationIdentityClient if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential identity_client = CommunicationIdentityClient( self.endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string( self.connection_string) user = identity_client.create_user() identity_client.delete_user(user)
def issue_token(self): from azure.communication.identity import CommunicationIdentityClient if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential identity_client = CommunicationIdentityClient( self.endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string( self.connection_string) user = identity_client.create_user() tokenresponse = identity_client.issue_token(user, scopes=["chat"]) print(tokenresponse)
def test_issue_token_from_managed_identity(self, connection_string): endpoint, access_key = parse_connection_str(connection_string) from devtools_testutils import is_live if not is_live(): credential = FakeTokenCredential() else: credential = DefaultAzureCredential() identity_client = CommunicationIdentityClient(endpoint, credential) user = identity_client.create_user() token_response = identity_client.issue_token(user, scopes=["chat"]) assert user.identifier is not None assert token_response.token is not None
def delete_user(self): from azure.communication.identity import CommunicationIdentityClient if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential endpoint, _ = parse_connection_str(self.connection_string) identity_client = CommunicationIdentityClient( endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string( self.connection_string) user = identity_client.create_user() print("Deleting user: "******" deleted")
def test_create_user_from_managed_identity(self, communication_livetest_dynamic_connection_string): endpoint, access_key = parse_connection_str(communication_livetest_dynamic_connection_string) from devtools_testutils import is_live if not is_live(): credential = FakeTokenCredential() else: credential = DefaultAzureCredential() identity_client = CommunicationIdentityClient( endpoint, credential, http_logging_policy=get_http_logging_policy() ) user = identity_client.create_user() assert user.properties.get('id') is not None
def get_token(self): from azure.communication.identity import ( CommunicationIdentityClient, CommunicationTokenScope ) if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential identity_client = CommunicationIdentityClient(self.endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string(self.connection_string) user = identity_client.create_user() print("Getting token for: " + user.identifier) tokenresponse = identity_client.get_token(user, scopes=[CommunicationTokenScope.CHAT]) print("Token issued with value: " + tokenresponse.token)
def revoke_tokens(self): from azure.communication.identity import ( CommunicationIdentityClient, CommunicationTokenScope ) if self.client_id is not None and self.client_secret is not None and self.tenant_id is not None: from azure.identity import DefaultAzureCredential identity_client = CommunicationIdentityClient(self.endpoint, DefaultAzureCredential()) else: identity_client = CommunicationIdentityClient.from_connection_string(self.connection_string) user = identity_client.create_user() tokenresponse = identity_client.get_token(user, scopes=[CommunicationTokenScope.CHAT]) print("Revoking token: " + tokenresponse.token) identity_client.revoke_tokens(user) print(tokenresponse.token + " revoked successfully")
def test_revoke_tokens_from_managed_identity( self, communication_connection_string): endpoint, access_key = parse_connection_str( communication_connection_string) from devtools_testutils import is_live if not is_live(): credential = FakeTokenCredential() else: credential = DefaultAzureCredential() identity_client = CommunicationIdentityClient(endpoint, credential) user = identity_client.create_user() token_response = identity_client.get_token( user, scopes=[CommunicationTokenScope.CHAT]) identity_client.revoke_tokens(user) assert user.properties.get('id') is not None assert token_response.token is not None