ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →Dataverse・Dynamics 365 API で ClientCredential を使うためのアプリユーザー作成がとても簡単になっていた話
杉本和也こんにちは。CData Software Japan リードエンジニアの杉本です。
最近ちょこっとDynamics 365 の「ClientCredential」による認証を試す必要があって、「まーたあの面倒くさい手順を踏まないといけないのかー」と思っていたんですよ。
この面倒くささは以前の私の記事を参照してみてください。
そして、Power Platform 管理センターを見ていたら、なんか画面に「アプリユーザーの一覧に移動します」みたいな文言があるではないですか!
これ、試してみたらすごく簡単になっていて、感動したので、紹介したいと思います!
(たぶん、それなりに前から追加されていたとは思うのですが)
事前準備
アプリユーザーの作成には、予めそのアプリユーザーが紐づくAzure ADのアプリ登録が必要です。
これは基本的に以前の私のBlogで紹介している手順と変わりありません。(UIはちょこちょこ変化がありますが)
「CDataSample」という名前でとりあえず作成し
APIのアクセス許可を設定しておきます。
必要に応じてシークレットまたは証明書を登録しておきましょう。
アプリユーザーの作成
それではアプリユーザーを作成してみましょう。
まずは「Power Platform管理センター」に移動して、任意の環境の画面を開きます。
その後「設定」に移動しましょう。
設定に移動後「ユーザーとアクセス許可」のところに「アプリケーション ユーザー」!という項目があるので、これをクリックします。
以下のような画面に移るので「アプリ ユーザーの設定」をクリック
ここがアプリユーザーの設定画面です。まずは「アプリの追加」をクリックしてみましょう
なんと素晴らしいことにAzure Active Directoryに先程登録したアプリが表示されました! 今までであれば、ClientIdをわざわざ指定しなければいけなかったのに、この手軽さ。素晴らしいですね。
早速このアプリを選択し
あとはこのアプリユーザーが所属する部署とセキュリティロールを設定するだけです。
これで無事アプリユーザーの作成が完了しました。
大変お手軽で素晴らしいですね。
CData Driver で使ってみる
せっかくなのでCData Driver からも使ってみましょう。といっても基本的な設定方法は前と変わりません。
以下のドキュメントでも詳しく解説しています。
プロパティ名 | 値 | 備考 |
---|---|---|
Organization URL | https://XXXX.crm7.dynamics.com/ | 接続先のURLを指定します。 |
InitiateOAuth | GETANDREFRESH | XXXX |
AzureTenant | 例)12f66cf8-7df4-4292-b70c-c89629c1700a | 接続先のAzure TenantId(ディレクトリId)を指定します。 |
OAuthGrantType | CLIENT | ClientCredentialsでは「CLIENT」を指定します。 |
OAuth Client Id | 例)c5197f7c-f159-4948-885a-74a11da873e4 | Azure ADに登録したアプリのアプリケーションIDを指定します。 |
OAuth Client Secret | 例)t7HA~_B~E8Lhoi3Ib.7NS6j_78-YQruid3 | Azure ADに登録したアプリのクライアントシークレットを指定します。 |
この状態でアクセスしてみると、いつもであればブラウザが立ち上がって、認証・認可のプロセスを挟むところを、そのままストレートにデータアクセスまで達成できます。
気になる方は是非お試しあれ。