2016-03-30 8 views
0

Pythonを使用してazure用のREST呼び出しを作成しようとしています。 PythonでADALを使用してアクセストークンを作成しました。 「提供された認証ヘッダーが無効な形式です」というエラーが表示されます。ここ はそのためのコードです:Pythonを使用してAzure用Raw RESTを呼び出す方法

import adal 
    import requests 

    token_response = adal.acquire_token_with_username_password(
    'https://login.windows.net/abcd.onmicrosoft.com', 
    'user-name', 
    'password' 
    ) 

    access_token = token_response.get('accessToken') 

    url = 'https://management.azure.com/subscriptions/{subscription- id}/providers/Microsoft.Network/virtualnetworks?api-version=2015-06-15' 
    headers = {'Content-Type': 'application/json', 
      'Authorization': access_token} 

    response = requests.get(url=url,headers = headers) 
    print(response.status_code) 
    print(response.text) 

誰もがアクセス・トークンがどのように見えるべきかを教えてもらえますか? これはPythonでRESTのトークンを生成する正しい方法ですか? 私は上記のコードのために、このリンクをrefferingています: https://msdn.microsoft.com/en-us/library/azure/mt163557.aspx

答えて

1

@GauravMantriはヘッダAuthorizationの値の形式を使用すると、ドキュメントのセクションCalling ARM REST APIs「Resource ManagerのRESTのAPI」を参照してくださいすることができBearer <access-token>で、言ったように。

たとえば、上記のセクションの例です。 ?

GET /サブスクリプション/ SUBSCRIPTION_ID/resourcegroups APIバージョンは、2015年1月1日= HTTP/1.1
ホスト:management.azure.com
認証:ベアラYOUR_ACCESS_TOKEN
のContent-Type:アプリケーション/ json

+0

そう!それは働いた、ありがとう –

0

あなたのトークンにBearerを付加する必要があります。ような何か:

headers = {'Content-Type': 'application/json', 
      'Authorization': 'Bearer ' + access_token} 
+0

これは機能しています、ありがとうございます。 –

関連する問題