カスタムOAuth アプリの作成
カスタムOAuth アプリを作成するタイミング
Web フローではカスタムOAuth アプリの作成が必須です。デスクトップおよびヘッドレスアプリケーションでは、カスタムOAuth アプリの作成は任意です。 本製品 はすでにMicrosoft Dynamics 365 Finance and Operations に登録されており、埋め込みクレデンシャルで接続できるからです。カスタムOAuth アプリを作成して、ユーザーがMicrosoft Dynamics 365 Finance and Operations OAuth エンドポイントにログインして本製品 にアクセス許可を与えるときに表示される情報を変更することもできます。
次の手順に従って、カスタムOAuth アプリを作成し、特定のOAuth 認証フローで接続プロパティを取得します。
カスタムOAuth アプリの作成手順
下記の手順に従って、アプリケーションのOAuth 値、OAuthClientId、およびOAuthClientSecret を取得します。
- https://portal.azure.com にログインします。
- 左側のナビゲーションペインでAzure Active Directory->アプリの登録を選択して、新規登録をクリックします。
- アプリ名を入力し、目的のテナント設定のラジオボタンを設定します。 Azure Active Directory でカスタムOAuth アプリケーションを作成する場合、アプリケーションをシングルテナントまたはマルチテナントに定義できます。デフォルトの オプション[この組織ディレクトリ内のアカウントのみ]を選択する場合は、CData JDBC Driver for Microsoft Dynamics 365 Finance and Operations への接続を確立するときにAzureTenant 接続プロパティをAzure AD テナントのId に 設定する必要があります。それ以外の場合は、認証に失敗しエラーが発生します。 アプリが個人使用のみの場合は、[この組織ディレクトリ内のアカウントのみ]で十分です。アプリを配布する場合は、マルチテナントオプションのいずれか1つを選択してください。
- そして、リダイレクトURL をhttp://localhost:33333 のような本製品 のデフォルトに設定します。あるいは、任意の別のポートを設定して、CallbackURL を定義した正確なリプライURL に設定します。
- 登録をクリックして新しいアプリを登録します。アプリの管理画面が表示されます。OAuthClientId としてApplication (client) ID の値、AzureTenant としてDirectory (tenant) ID の値をメモします。
- 証明書とシークレットセクションに移動して、アプリの認証タイプを定義します。認証には、クライアントシークレットを使用する方法と、証明書を使用する方法の2種類があります。
推奨されている認証方法は証明書を使用する方法ですが、アプリケーションシークレットを作成することも可能です。
- オプション1 - 証明書をアップロードする:[証明書とシークレット]セクションで[証明書のアップロード]を選択し、ローカルマシンからアップロードする証明書を選択します。
- オプション2 - 新しいアプリケーションシークレットを作成する:[証明書とシークレット]セクションで[新しいクライアントシークレット]を選択し、有効期限を選択します。クライアントシークレットを保存すると、 キーの値が表示されます。表示は一度のみなので値をコピーします。これはOAuthClientSecret として使用されます。
- [API のアクセス許可]を選択して[アクセス許可の追加]をクリックします。ユーザーコンテキストなしでアプリを接続する予定の場合は、[アプリケーションの許可](OAuthGrantType = CLIENT)を選択します。それ以外の場合は、アクセス許可を選択するときに[委任されたアクセス許可]を使用します。
- Select Required Permissions and then click Add. Under Select an API, select the Dynamics 365 Finance and Operations permissions.
- 変更を保存します。
- 管理者の同意が必要なアクセス許可([アプリケーションの許可]など)を使用することを選択した場合は、API のアクセス許可ページで現在のテナントから付与することができます。それ以外の場合は、管理者の同意 の手順に従ってください。