Azure のサブスクリプション ID から Azure AD のテナント ID を取得する (Python)

Azure のサブスクリプション ID から Azure AD のテナント ID を取得する Python スクリプトです。

import requests

def get_tenantid_from_subscriptionid(subscriptionid):
  uri = 'https://management.azure.com/subscriptions/' + \
    subscriptionid + '?api-version=2015-01-01'
  headers = {
    'Authentication': 'Bearer xxx' 
  }
  resp = requests.get(uri, headers=headers)
  www_authenticate_header = resp.headers['WWW-Authenticate']
  tenantid = www_authenticate_header.split(',')[0].split('"')[1].split('/')[-1]
  return tenantid

参考

WWW-Authenticate の応答ヘッダーの値からテナント ID を取得します。 docs.microsoft.com