-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Description
azure-identity==1.2.0
azure-keyvault-secrets==4.0.1
Windows 10
python 3.6.10
After creating a credential object from InteractiveBrowserCredential(), if I immediately call credential.get_token(), then the returned token can successfully be used with Microsoft Graph API.
However, if I first use the credential for a SecretClient get_secret() call, and then do the credential.get_token() call, the returned token cannot be used with Graph API - the following error is returned:
"{'error': {'code': 'InvalidAuthenticationToken', 'message': 'Access token validation failure. Invalid audience.', 'innerError': {'request-id': '09fc35e4-56ba-4740-a993-a0379c5ca524', 'date': '2020-03-10T21:03:23'}}}"
My Graph API call:
endpoint = "https://graph.microsoft.com/v1.0/me"
headers = {'Authorization': 'Bearer ' + token}
graph_data = requests.get(endpoint, headers=headers).json()
upn = graph_data["userPrincipalName"]
Expected behavior
I expect the Graph API to work, independent of when I call get_token().
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Not a blocking problem, but seems related to another problem where, when using
DeviceCodeCredential(), the call to get_context() requires a 2nd authentication.