Python 用 Azure Identity Broker プラグイン

このパッケージは、認証ブローカーを介して認証するための追加の資格情報を提供することで 、Azure ID ライブラリを拡張します。

認証ブローカーは、接続されているアカウントの認証ハンドシェイクとトークンメンテナンスを管理するユーザーのマシン上で実行されるアプリケーションです。 現時点では、Windows 認証 ブローカーである Web アカウント マネージャー (WAM) のみがサポートされています。

ソースコード | パッケージ (PyPI) | API リファレンス ドキュメント | Microsoft Entra ID のドキュメント

作業の開始

パッケージをインストールする

pip を使用して Python 用の Azure Identity Broker プラグインをインストールします。

pip install azure-identity-broker

主要な概念

このパッケージを使用すると、Azure Identity ライブラリの のInteractiveBrowserCredentialサブクラスである を介したInteractiveBrowserBrokerCredentialブローカーサポートが可能になります。

親ウィンドウ ハンドル

を使用して InteractiveBrowserBrokerCredential対話形式で認証する場合は、要求ウィンドウに対して認証ダイアログが正しく表示されるようにするには、親ウィンドウ ハンドルが必要です。 デバイス上のグラフィカル ユーザー インターフェイスのコンテキストでは、ウィンドウ ハンドルはオペレーティング システムが各ウィンドウに割り当てる一意の識別子です。 Windows オペレーティング システムの場合、このハンドルは特定のウィンドウへの参照として機能する整数値です。

Microsoft アカウント (MSA) パススルー

Microsoft アカウント (MSA) は、ユーザーが Microsoft サービスにアクセスするために作成した個人アカウントです。 MSA パススルーは、ユーザーが通常 MSA ログインを受け入れないリソースにトークンを取得できるようにするレガシ構成です。 この機能は、ファースト パーティアプリケーションでのみ使用できます。 MSA パススルーを使用するように構成されているアプリケーションで認証を行うユーザーは、 を 内部InteractiveBrowserBrokerCredentialTrue設定enable_msa_passthroughして、これらの個人アカウントを WAM で一覧表示できるようにします。

リダイレクト URI

Microsoft Entraアプリケーションは、リダイレクト URI を使用して、ユーザーがログインした後に認証応答を送信する場所を決定します。 WAM によるブローカー認証を有効にするには、次のパターンに一致するリダイレクト URI をアプリケーションに登録する必要があります。

ms-appx-web://Microsoft.AAD.BrokerPlugin/{client_id}

で認証する InteractiveBrowserBrokerCredential

この例では、azure-storage-blob ライブラリから を使用して認証するためのBlobServiceClientブローカー対応資格情報として を使用InteractiveBrowserBrokerCredentialする方法を示します。 ここでは、パッケージを win32gui 使用して現在のウィンドウを取得します。

import win32gui
from azure.identity.broker import InteractiveBrowserBrokerCredential
from azure.storage.blob import BlobServiceClient

# Get the handle of the current window
current_window_handle = win32gui.GetForegroundWindow()

credential = InteractiveBrowserBrokerCredential(parent_window_handle=current_window_handle)
client = BlobServiceClient(account_url, credential=default_credential)

トラブルシューティング

さまざまな障害シナリオを診断する方法の詳細については、Azure ID のトラブルシューティング ガイド を参照してください。

次のステップ

クライアント ライブラリのサポート

Microsoft Entra認証をサポートする Azure SDK リリース ページに一覧表示されているクライアント ライブラリと管理ライブラリは、このライブラリからの資格情報を受け入れます。 これらのライブラリの使用の詳細については、リリース ページからリンクされているドキュメントを参照してください。

既知の問題

このライブラリでは、 Azure AD B2C はサポートされていません。

その他のオープンな問題については、ライブラリの GitHub リポジトリを参照してください。

フィードバックの提供

バグが発生した場合、または提案がある場合は、 問題を開きます

共同作成

このプロジェクトでは、共同作成と提案を歓迎しています。 ほとんどの共同作成では、共同作成者使用許諾契約書 (CLA) にご同意いただき、ご自身の共同作成内容を使用する権利を Microsoft に供与する権利をお持ちであり、かつ実際に供与することを宣言していただく必要があります。 詳細については、 https://cla.microsoft.com を参照してください。

pull request を送信すると、CLA を提供して PR (ラベル、コメントなど) を適宜装飾する必要があるかどうかを CLA ボットが自動的に決定します。 ボットによって提供される手順にそのまま従ってください。 この操作は、Microsoft の CLA を使用するすべてのリポジトリについて、1 回だけ行う必要があります。

このプロジェクトでは、Microsoft オープン ソースの倫理規定を採用しています。 詳しくは、「Code of Conduct FAQ (倫理規定についてよくある質問)」を参照するか、opencode@microsoft.com 宛てに質問またはコメントをお送りください。