Azure Communication Identity Package ügyfélkódtár Pythonhoz – 1.4.0-s verzió
Az Azure Communication Identity ügyfélcsomagja az Azure Communication Service-ajánlatok használatának alapjainak beállítására szolgál. Ez a csomag segít olyan identitásfelhasználói jogkivonatok létrehozásában, amelyeket más ügyfélcsomagok, például csevegés, hívás, sms-ek használhatnak.
Forráskód | Csomag (Pypi) | Csomag (Conda) | API-referenciadokumentáció | Termékdokumentáció
Felelősséget kizáró nyilatkozat
Az Azure SDK Python-csomagok támogatása a Python 2.7-hez 2022. január 01-én véget ért. További információkért és kérdésekért lásd: https://github.com/Azure/azure-sdk-for-python/issues/20691
Első lépések
Előfeltételek
- A csomag használatához Python 3.7 vagy újabb verzió szükséges.
- Azure-előfizetéssel kell rendelkeznie
- Üzembe helyezett Communication Services-erőforrás. A beállításához használhatja az Azure Portalt vagy a Azure PowerShell.
A csomag telepítése
Telepítse a Pythonhoz készült Azure Communication Identity ügyfélkódtárat a pip használatával:
pip install azure-communication-identity
Fő fogalmak
CommunicationIdentityClient
CommunicationIdentityClient
a következő műveletekhez nyújt műveleteket:
A Azure Communication Services használandó identitások létrehozása/törlése. Ezek az identitások felhasználhatók az Azure Communication-ajánlatok használatára, és hatókörük korlátozott lehet a jogkivonat-hatókörökön keresztül.
Hatókörrel rendelkező felhasználói hozzáférési jogkivonatok létrehozása/visszavonása olyan szolgáltatások eléréséhez, mint a csevegés, a hívás, az SMS. A jogkivonatok érvényes Azure Communication-identitáshoz vannak kibocsátva, és bármikor visszavonhatók.
Identitásügyfél inicializálása
# You can find your endpoint and access token from your resource in the Azure Portal
import os
from azure.communication.identity import CommunicationIdentityClient
from azure.identity import DefaultAzureCredential
connection_str = "endpoint=ENDPOINT;accessKey=KEY"
endpoint = "https://<RESOURCE_NAME>.communication.azure.com"
# To use Azure Active Directory Authentication (DefaultAzureCredential) make sure to have
# AZURE_TENANT_ID, AZURE_CLIENT_ID and AZURE_CLIENT_SECRET as env variables.
identity_client_managed_identity = CommunicationIdentityClient(endpoint, DefaultAzureCredential())
#You can also authenticate using your connection string
identity_client = CommunicationIdentityClient.from_connection_string(connection_str)
Példák
A következő szakasz számos kódrészletet tartalmaz, amelyek a leggyakoribb Azure Communication Services feladatokat tartalmazzák, többek között:
- Új felhasználó létrehozása
- Hozzáférési jogkivonat kiállítása vagy frissítése egy felhasználó számára
- Felhasználó és jogkivonat létrehozása egyetlen kérelemben
- Felhasználó hozzáférési jogkivonatainak visszavonása
- Felhasználó törlése
- Egy Teams-felhasználó Azure AD hozzáférési jogkivonatának cseréje kommunikációs identitás hozzáférési jogkivonatra
Új felhasználó létrehozása
create_user
A metódus használatával hozzon létre egy új felhasználót.
user = identity_client.create_user()
print("User created with id:" + user.properties['id'])
Hozzáférési jogkivonat kiállítása vagy frissítése egy felhasználó számára
get_token
A metódussal kibocsáthat vagy frissíthet egy hatókörön belüli hozzáférési jogkivonatot a felhasználó számára.
Adja meg a felhasználói objektumot paraméterként, és adja meg a CommunicationTokenScope
következő listáját: . A hatókör beállításai a következők:
CHAT
(Használja ezt a csevegési API-k teljes körű eléréséhez)VOIP
(Használja ezt a hívó API-khoz való teljes hozzáféréshez)CHAT_JOIN
(Hozzáférés csevegési API-khoz, de a csevegési szálak létrehozására, törlésére vagy frissítésére vonatkozó engedély nélkül)CHAT_JOIN_LIMITED
(A CHAT_JOIN korlátozottabb verziója, amely nem teszi lehetővé a résztvevők hozzáadását vagy eltávolítását)VOIP_JOIN
(Hozzáférés a hívó API-khoz, de nem rendelkezik új hívások indítására vonatkozó engedéllyel)
tokenresponse = identity_client.get_token(user, scopes=[CommunicationTokenScope.CHAT])
print("Token issued with value: " + tokenresponse.token)
Hozzáférési jogkivonat kiállítása vagy frissítése egyéni lejárattal egy felhasználó számára
Megadhatja a jogkivonat lejárati idejét. A jogkivonat úgy konfigurálható, hogy akár egy órán belül, akár 24 órán belül lejárjon. Az alapértelmezett lejárati idő 24 óra.
token_expires_in = timedelta(hours=1)
tokenresponse = identity_client.get_token(user, scopes=[CommunicationTokenScope.CHAT], token_expires_in=token_expires_in)
print("Token issued with value: " + tokenresponse.token)
Felhasználó és jogkivonat létrehozása egyetlen kérelemben
A kényelem érdekében hozzon létre egy új felhasználót, create_user_and_token
és adjon ki egy jogkivonatot egy függvényhívással. Ez egyetlen webes kérésre fordítható le, nem pedig egy felhasználó első létrehozása, majd egy jogkivonat kiállítása.
user, tokenresponse = identity_client.create_user_and_token(scopes=[CommunicationTokenScope.CHAT])
print("User id:" + user.properties['id'])
print("Token issued with value: " + tokenresponse.token)
Felhasználó és jogkivonat létrehozása egyéni lejárattal egyetlen kérelemben
Megadhatja a jogkivonat lejárati idejét. A jogkivonat úgy konfigurálható, hogy akár egy órán belül, akár 24 órán belül lejárjon. Az alapértelmezett lejárati idő 24 óra.
token_expires_in = timedelta(hours=1)
user, tokenresponse = identity_client.create_user_and_token(scopes=[CommunicationTokenScope.CHAT], token_expires_in=token_expires_in)
print("User id:" + user.properties['id'])
print("Token issued with value: " + tokenresponse.token)
Felhasználó hozzáférési jogkivonatainak visszavonása
A használatával revoke_tokens
visszavonhatja a felhasználó összes hozzáférési jogkivonatát. Adja meg a felhasználói objektumot paraméterként
identity_client.revoke_tokens(user)
Felhasználó törlése
delete_user
A metódus használatával törölhet egy felhasználót. Adja meg a felhasználói objektumot paraméterként
identity_client.delete_user(user)
Egy Teams-felhasználó Azure AD hozzáférési jogkivonatának cseréje kommunikációs identitás hozzáférési jogkivonatra
get_token_for_teams_user
A metódussal egy Teams-felhasználó Azure AD hozzáférési jogkivonatát cseréli le egy új kommunikációs identitás hozzáférési jogkivonatára.
identity_client.get_token_for_teams_user(aad_token, client_id, user_object_id)
Hibaelhárítás
Az Azure Communication Service Identity-ügyfél kivételeket hoz létre az Azure Core-ban.
Következő lépések
További mintakód
Tekintse meg a mintakönyvtárat , amely részletesen bemutatja, hogyan kezelhetők az identitások és jogkivonatok a kódtárban.
Visszajelzés küldése
Ha bármilyen hibába ütközik, vagy javaslatai vannak, küldjön egy problémát a projekt Problémák szakaszában.
Közreműködés
A projektben szívesen fogadjuk a hozzájárulásokat és a javaslatokat. A legtöbb hozzájáruláshoz el kell fogadnia egy Közreműködői licencszerződést (CLA-t), amelyben kijelenti, hogy jogosult arra, hogy ránk ruházza hozzájárulása felhasználási jogát, és ezt ténylegesen meg is teszi. További részletekért lásd: https://cla.microsoft.com.
A lekéréses kérelmek elküldésekor egy CLA-robot automatikusan meghatározza, hogy kell-e biztosítania CLA-t, és megfelelően kitölti a lekéréses kérelmet (például címke, megjegyzés). Egyszerűen csak kövesse a robot által megadott utasításokat. Ezt csak egyszer kell elvégeznie az összes olyan tárházban, amely a CLA-t használja.
A projekt a Microsoft nyílt forráskódú projekteket szabályozó etikai kódexe, a Microsoft Open Source Code of Conduct hatálya alá esik. További információkért lásd a viselkedési szabályzattal kapcsolatos gyakori kérdéseket , vagy vegye fel a kapcsolatot opencode@microsoft.com az esetleges további kérdésekkel vagy megjegyzésekkel.
Azure SDK for Python
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: