NetworkManagementClient の Azure Core 世代では、構築時にプロキシマップを指定します。

from azure.mgmt.network import NetworkManagementClient

network = NetworkManagementClient(
    credential,
    subscription_id,
    proxies={
        'http': 'http://proxy.example:8080',
        'https': 'http://proxy.example:8080',
    },
)

アプリケーションの既存の credential と subscription_id はそのまま残します。https キーは HTTPS の管理先を選択し、その http:// 値は中間リスナーを表します。管理エンドポイントは実際の Azure サービスにしておきます。公開 HTTP ルートを選ぶときは、HTTP プロキシ一覧 のアドレスをプロキシマップの値に入れます。

構成のソースを選ぶ

SDK はプロセス環境の HTTP_PROXY と HTTPS_PROXY にも対応しています。クライアントを使うサービス、ノートブックカーネル、CI ワーカーに適用してください。文書化されている use_env_settings オプションは、該当する環境設定を使うかどうかを制御します。

この構築パターンを古い client.config.proxies.add の例と混在させないでください。それらは msrest 世代のものです。

失敗した要求を特定する

このマップは管理パイプラインを制御します。トークンの取得中に失敗する場合は、資格情報オブジェクトが対応しているネットワーク構成を調べてください。管理呼び出しが送られる前に、その要求を独自のトランスポート経由で通すことができます。

関連記事