Dynamics Lifecycle Services API - 認証
この記事では、Dynamics Translation Service API を含む Lifecycle Services API を呼び出すための Microsoft Entra 設定の概要を提供します。 API を使用して利用できるリソースにアクセスするには、Microsoft Entra からベアラー トークンを取得し、ヘッダーとして各要求と一緒に送信する必要があります。
正しいアクセス許可を持つ持ち主トークンを取得するには、次の手順が必要です。
- Microsoft Entra テナントでアプリケーションの登録を作成します。
- API のアクセス許可を構成します。
- パブリック クライアントを構成します。
- アクセス トークンを要求します。
アプリケーション登録を作成する
- Microsoft Entra アプリの登録 ページに移動し、新しい登録を作成します。
- アプリケーションに名前を付け、シングル テナント オプションが選択されているかを確認します。 リダイレクト URI の設定をスキップすることができます。
API のアクセス許可の構成
- 新規アプリ登録内で、管理 - API のアクセス許可 の アクセス許可の構成 セクションで、アクセス許可の追加 を選択します。
- ダイアログ ボックスで、組織が使用する API タブで、Dynamics Lifecycle Services を検索します。 このような名前のエントリがいくつか表示される場合は、必ず GUID 913c6de4-2a4a-4a61-a9ce-945d2b2ce2e0 を持つものを使ってください。
メモ
これらの API では、委任されたアクセス許可を現時点でのみ使用します。 ユーザー コンテキストで実行するアプリケーションの場合は、user_impersonation の スコープ パラメーターを使用して、委任されたアクセス許可を要求します。 これらのアクセス許可は、アプリケーションにサインイン ユーザーの特権を委任し、API エンドポイントを呼び出す際のユーザーの機能を許可します。
アプリケーションが独自の ID または管理 ID を使用して API を呼び出すサービス プリンシパル認証はサポートされていません。
- 必要なアクセス許可をアプリケーションに追加したら、設定を完了するために 管理者に同意する を選択します。 これは、対話型の同意エクスペリエンスを必要とするのではなく、ユーザーがアプリケーションに近い位置でアクセスを許可する場合に必要です。 対話型の同意をサポートできる場合は、Microsoft ID プラットフォームおよび OAuth 2.0 認証コード フロー に従することをお勧めします。
手順 3 パブリック クライアントの構成
ユーザーの代わりにリソースの読み取りおよび書き込みを開始するには、パブリック クライアント 設定を有効にする必要があります。 これは、Microsoft Entra ID がトークン要求の本文でユーザー名とパスワードのプロパティを受け入れる唯一の方法です。 この機能を使用する場合は、多要素認証が有効な勘定には使用できません。
- 有効にするには、管理 - 認証 タブの パブリック クライアント タブから、詳細設定 セクションで パブリック クライアント スイッチを はい に設定します。
手順 4 アクセス トークンの要求
ユーザー名とパスワードに対してベアラー トークンを要求するには、HTTP を使用してユーザー名とパスワードのペイロードを含む Microsoft Entra ID に POST 要求を送信します。
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Accept: application/json
POST https://login.microsoftonline.com/YOUR_TENANT.COM/oauth2/v2.0/token
BODY:
client_id={CLIENT_ID_FROM_AZURE_CLIENT_APP}&scope=https://lcsapi.lcs.dynamics.com//.default&username={USER_EMAIL_ADDRESS}&password={PASSWORD}&grant_type=password
前の例には、Microsoft Entra ID でクライアント アプリケーションから取得できるプレースホルダが含まれているとします 。 後続の Power Platform API 呼び出しに使用できる応答が返されます。
{
"token_type": "Bearer",
"scope": "https://lcsapi.lcs.dynamics.com//user_impersonation https://lcsapi.lcs.dynamics.com//.default",
"expires_in": 4228,
"ext_expires_in": 4228,
"access_token": "eyJ0eXAiOiJKV1Qi..."
}
以降の呼び出しで access_token 値を、認証 HTTP ヘッダーを持った Lifecycle Services API に対して使用します。