salesforce developerにAzureAD SSOできるようにする

salesforce developerにAzureAD SSOできるようにする

salesforce developer editionにAzureAD SSOできるようにする

基本的にはこちらのMSのdocsを見てやればすんなり終わると思ったんですが、
下記のようなエラーになってしまったので、対処方法を書いてみたいと思います。

エラー内容 AADSTS700016

AADSTS700016: Application with identifier 'https://saml.salesforce.com' was not found in the directory '120f08a0-e7b3-4abc-8244-7543543b13dc'. 
This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. 
You may have sent your authentication request to the wrong tenant.

エラーコードで調べると下記の記述があります。

UnauthorizedClient_DoesNotMatchRequest - ディレクトリまたはテナントにアプリケーションが見つかりませんでした。 
このエラーは、アプリケーションがテナントの管理者によってインストールされていない場合や、
アプリケーションがテナント内のいずれのユーザーによっても同意されていない場合に発生することがあります。
 アプリケーションの識別子の値を正しく構成していないか、または間違ったテナントに認証要求を送信した可能性があります。

いやいやエンタープライズアプリケーションにあるやつを追加しただけなんだけど??ってなりましたが、
Salesforce側のSSO設定をよくよくみてみると、

設定の[ID] → [シングルサインオン設定] → 追加したSSO設定名横の【編集】をクリックで設定画面を表示します。

 

ここの設定はMS docsのチュートリアルどおりにメタデータのxmlをダウンロードして作成しています。
この中の「エンティティID」部分が、「https://saml.salesforce.com」となっていたことが原因でした。

そのため、エンティティID部分に私のドメインで設定したドメインを入力し保存します。
developer editiono場合は、https://<設定したドメイン名>-dev-ed.my.salesforce.com のようになるかと思います。

これで、https://myapps.microsoft.com/ へアクセスし、Salesforce へのSSOが正常に動作するかを確認します。
AzureAD側エンタープライズアプリケーション設定で、識別子(エンティティID)は設定したドメインを登録してあるのですが
メタデータに反映されないんですかね・・・。
↓この部分

何はともあれこれでSalesforce developer editionへのSSOもできるようになりましたので、
条件付きアクセス等で制御したりテストしたりすることが可能になりました!

 

 

Azure Active Directoryカテゴリの最新記事


Warning: Use of undefined constant XML - assumed 'XML' (this will throw an Error in a future version of PHP) in /home/add-smart/intracker.net/public_html/blog/wp-content/plugins/wp-syntaxhighlighter/wp-syntaxhighlighter.php on line 1048
%d人のブロガーが「いいね」をつけました。