DeviceCodeCredential クラス

デバイス コード フローを使用してユーザーを認証します。

が呼び出されると get_token 、この資格情報は Azure Active Directory から検証 URL とコードを取得します。 ユーザーは、URL を参照し、コードを入力し、Azure Active Directory で認証する必要があります。 ユーザーが正常に認証されると、資格情報はアクセス トークンを受け取ります。

この資格情報は、主に、SSH セッションなどの Web ブラウザーを使用しない環境でユーザーを認証する場合に役立ちます。 Web ブラウザーが使用可能な場合は、 InteractiveBrowserCredential ブラウザーがログイン ページに自動的に開くので、より便利です。

継承
azure.identity._internal.interactive.InteractiveCredential
DeviceCodeCredential

コンストラクター

DeviceCodeCredential(client_id: str = '04b07795-8ddb-461a-bbee-02f9e1bf7b46', *, timeout: int | None = None, prompt_callback: Callable[[str, str, datetime], None] | None = None, **kwargs: Any)

パラメーター

client_id
str
既定値: 04b07795-8ddb-461a-bbee-02f9e1bf7b46

ユーザーが認証するアプリケーションのクライアント ID。 指定されていない場合、ユーザーは Azure 開発アプリケーションに対して認証を行います。

authority
str

Azure Active Directory エンドポイントの権限 ("login.microsoftonline.com" など)、Azure パブリック クラウドの権限 (既定値)。 AzureAuthorityHosts は、他のクラウドの権限を定義します。

tenant_id
str

Azure Active Directory テナント ID。 既定では、職場または学校アカウントを認証できる "組織" テナントが使用されます。 シングルテナント アプリケーションに必要です。

timeout
int

ユーザーの認証を待機する秒数。 既定では、Azure Active Directory によって設定されたデバイス コードの有効期間が設定されます。 タイムアウト が長い場合にも優先されます。

prompt_callback
Callable[str, str, datetime]

認証手順の表示方法の制御を有効にするコールバック。 引数 (verification_uri、、user_codeexpires_on) を受け入れる必要があります。

  • verification_uri (str) ユーザーがアクセスする必要がある URL

  • user_code (str) ユーザーがそこに入力する必要があるコード

  • expires_on (datetime.datetime) コードの有効期限が切れる UTC 時刻

この引数が指定されていない場合、資格情報によって命令が stdout に出力されます。

authentication_record
AuthenticationRecord

AuthenticationRecord によって返される authenticate

disable_automatic_authentication
bool

True の場合、 は、 get_token トークンを取得するためにユーザーの操作が必要な場合に発生 AuthenticationRequiredError します。 既定値は False です。

cache_persistence_options
TokenCachePersistenceOptions

永続的なトークン キャッシュの構成。 指定しない場合、資格情報はトークンをメモリにキャッシュします。

disable_instance_discovery
bool

認証を試みるときにインスタンス検出を実行するかどうかを決定します。 これを true に設定すると、インスタンスの検出と機関の検証の両方が完全に無効になります。 この機能は、プライベート クラウドや Azure Stack など、メタデータ エンドポイントに到達できないシナリオでの使用を目的としています。 インスタンス検出のプロセスでは、 から https://login.microsoft.com/ 機関メタデータを取得して機関を検証する必要があります。 これを True に設定すると、機関の検証は無効になります。 その結果、構成された機関ホストが有効で信頼できることを確認することが重要です。

DeviceCodeCredential を作成します。


   from azure.identity import DeviceCodeCredential

   credential = DeviceCodeCredential()

メソッド

authenticate

ユーザーを対話形式で認証します。

close
get_token

スコープのアクセス トークンを要求 します

このメソッドは、Azure SDK クライアントによって自動的に呼び出されます。

authenticate

ユーザーを対話形式で認証します。

authenticate(**kwargs: Any) -> AuthenticationRecord

パラメーター

scopes
Iterable[str]

によって提供 scopesされるものなど、認証時に要求するスコープ。 指定した場合、認証が成功すると、これらのスコープのアクセス トークンがキャッシュされます。

claims
str

トークンに必要な追加の要求 (例: によって提供される要求) claims

の戻り値の型 :

例外

認証に失敗しました。 エラーの message 属性には理由があります。

close

close() -> None

例外

認証に失敗しました。 エラーの message 属性には理由があります。

get_token

スコープのアクセス トークンを要求 します

このメソッドは、Azure SDK クライアントによって自動的に呼び出されます。

get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

パラメーター

scopes
str
必須

アクセス トークンの目的のスコープ。 このメソッドには、少なくとも 1 つのスコープが必要です。 スコープの詳細については、「」を参照してください https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc

claims
str

承認エラーの後にリソース プロバイダーの要求チャレンジで返される要求など、トークンに必要な追加の要求

tenant_id
str

トークン要求に含めるオプションのテナント。

enable_cae
bool

は、要求されたトークンに対して継続的アクセス評価 (CAE) を有効にするかどうかを示します。 既定値は False です。

戻り値

目的のスコープを持つアクセス トークン。

の戻り値の型 :

例外

資格情報は、必要なデータ、状態、またはプラットフォームのサポートがないため、認証を試みることができません

認証に失敗しました。 エラーの message 属性には理由があります。

トークンを取得するにはユーザーの操作が必要であり、これを自動的に開始しないように資格情報が構成されます。 Call (英語の可能性あり)

を使用して対話型認証を開始します。