Я пытаюсь получить токен доступа, аутентифицируя мое приложение с помощью AAD через сертификат.Сертификат установлен на моем локальном компьютере (Windows 10).Эта аутентификация необходима для доступа к внешнему API.
Я следую инструкциям, опубликованным в Документах Azure
Пример кода:
def authenticate_client_cert():
"""
Authenticate using service principal w/ cert.
"""
authority_host_uri = 'https://login.microsoftonline.com'
tenant = '<TENANT>'
authority_uri = authority_host_uri + '/' + tenant
resource_uri = 'https://management.core.windows.net/'
client_id = '<CLIENT_ID>'
client_cert = '<CLIENT_CERT>' ### MISSING THIS
client_cert_thumbprint = '<CLIENT_CERT_THUMBPRINT>'
context = adal.AuthenticationContext(authority_uri, api_version=None)
mgmt_token = context.acquire_token_with_client_certificate(resource_uri, client_id, client_cert, client_cert_thumbprint)
credentials = AADTokenCredentials(mgmt_token, client_id)
return credentials
У меня есть '<CLIENT_ID>'
, '<TENANT>'
и '<CLIENT_CERT_THUMBPRINT>'
, но мне не хватает '<CLIENT_CERT>'
Насколько я понимаю, '<CLIENT_CERT>'
- это закрытый ключ, но я не могу экспортировать приватныйключ, потому что он не разрешен.
Поэтому я не уверен, как я могу пройти проверку подлинности из AAD с помощью этого сертификата.