Microsoft Information Protection SDK - 認証の概念
MIP SDK での認証は、クラス mip::AuthDelegate
を拡張して好みの認証方法を実装することによって実行されます。 mip::AuthDelegate
の内容:
mip::AuthDelegate::OAuth2Challenge
- OAuth2 権限情報を管理し、クライアント アプリケーションに提供するクラス。mip::AuthDelegate::OAuth2Token
- OAuth2 アクセス トークンの (クライアント アプリケーションからの) 取得とトークンの保存を管理するクラス。mip::AuthDelegate::AcquireOAuth2Token()
- 実装によってアクセス トークンの取得方法が決まる純粋な仮想関数。 SDK によって呼び出された後、アクセス トークンを取得し、それを SDK の認証ロジックに返します。
mip::AuthDelegate::AcquireOAuth2Token
は次のパラメータを受け入れ、トークンの取得が成功したかどうかを示すブール値を返します。
mip::Identity
: 認証されるユーザーまたはサービスの ID (既知の場合)。mip::AuthDelegate::OAuth2Challenge
: 4 つのパラメーター authority、resource、claims、scopes を受け取ります。 Authorityは、トークンが生成されるサービスです。 Resource は、アクセスしようとしているサービスです。 SDK は、呼び出されたときにこれらのパラメーターをデリゲートに渡す処理を行います。 Claims は、保護サービスに必要なラベル固有のクレームです。 Scopes は、リソースにアクセスするために必要な Microsoft Entra アクセス許可スコープです。mip::AuthDelegate::OAuth2Token
: トークンの結果がこのオブジェクトに書き込まれます。 これは、エンジンがロードされるときに SDK によって消費されます。 認証の実装以外では、この値を取得または設定する必要はありません。
重要: アプリケーションは AcquireOAuth2Token
を直接呼び出しません。 SDK は、必要に応じてこの関数を呼び出します。
次のステップ
簡単にするために、デリゲートをデモするサンプルでは、外部スクリプトを呼び出してトークンの取得を実装します。 このスクリプトは、他のタイプのスクリプト、オープンソース OAuth2 ライブラリ、またはカスタム OAuth2 ライブラリに置き換えることができます。