#プロビジョニングで検疫エラーが発生
先日Salesforce のユーザがプロビジョニングされていなかったので
AzureADでプロビジョニングの状態を確認したところ、以下のエラーが発生していました。
SalesforceでAuthenticated Websiteってロールが重複している影響で
プロビジョニングができていない模様
Microsoftグラフを使用してサービスプリンシパルで重複したロールを消せば
直ると書いてあったので、指示に従ってみます。
#MicrosoftGraphで修正作業
MicrosoftGraphにアクセスしてみます。
Microsoft Graph は、Microsoft Cloud サービス リソースへのアクセスする Web APIみたいです。
MicrosoftGraph
AzureADの管理者IDでログインし、APIへのアクセス権限を付与するために
Modify Permissionsで以下にチェックを入れます。
"Directory.Read.All"
"Directory.ReadWrite.All"
"Directory.AccessAsUser.All"
まずリソースからservicePrincipal データを読み取ります。
GET https://graph.microsoft.com/beta/servicePrincipals/アプリのObjectID
を入力後[Run Query]をクリックします
コマンドに成功すると、以下のような画面があるので、appRolesの部分を全部メモ帳等にコピーします
メモ帳を確認するとと、確かにAuthenticated Websiteが重複しており、
isEnabledがtrueとなっていました。
重複部分を削除したいのですが、アプリロールを削除するには一度無効化をしないといけないので無効化を実施します。
消したいアプリロールのisEnabledをfalseにします
MicrosoftGraph画面でPATCHコマンドでリソースを新しい値に更新します。
コマンドの黒塗りの部分はアプリケーションのディレクトリIDが入ります。
RequestBodyの部分にメモ帳で修正したappRolesを貼り付けます
貼り付けの際に**{ }**で囲むのを忘れないようにしてください!!
[Run Query]をクリックします
コマンドが成功したら、次に重複のロールを削除します。
重複しているAuthenticated Website(isEnabledをfalseにしたもの)を削除して
もう一度PATCH https://graph.microsoft.com/beta/servicePrincipals/アプリのObjectIDを入力後
[Run Query]をクリックします
Successが出ればOKです。
#プロビジョニングジョブの再起動
Azureポータルに戻りプロビジョニングジョブを再起動します。
[現在の状態を初期して、同期を再開します]にチェックをいれ[保存]ボタンを押下します。
無事プロビジョニングが成功しました。
発生原因についてはわかりませんでしたが、検証でアプリの設定を繰り返し
設定していたので、それが原因かもしれません。参考まで