![見出し画像](https://assets.st-note.com/production/uploads/images/65555082/rectangle_large_type_2_dd9ea9e680d91877738f77563da02d1c.png?width=1200)
Microsoft 365 からSalesforceへのSSOについて
SalesforceのMFA認証の必須化の対応をしていたところ、SSOする場合どうなるんだろうって思って調べていました。
SSOの場合、IdP側で2要素認証をしておけば良いということで安心していたのですが、まさかの「メール、電話、SMS」はダメだったので取り急ぎMicrosoft Authenticatorの導入をしました。
今回はMS365のアカウントを用いてSalesforceにSSOする場合の設定について記載していきます。
Salesforce側の前提
SSOを介する場合でもMFAは必須になります。
シングルサインオン (SSO) を介してアクセスされる Salesforce 製品に MFA は必須ですか?
はい、MFA 要件は、Salesforce 製品のユーザインターフェースに直接ログインまたは SSO 経由でアクセスするすべてのユーザに適用されます。Salesforce 製品が SSO と統合されている場合、すべての Salesforce ユーザに対して確実に MFA を有効化します。たとえば、SSO プロバイダの MFA サービスを使用できます。また、Salesforce プラットフォーム上に構築された製品の場合、SSO レベルで MFA を有効にする代わりに Salesforce で提供される無料の MFA 機能を使用できます。詳細は、Salesforce ヘルプの「SSO ログインでの Salesforce MFA の使用」を参照してください。
SSO ID プロバイダ (IdP) を使用してアクセスされるアカウントを保護する責任はすべてお客様が負うものとします。ID プロバイダは、デジタル ID を保存して管理し、ユーザを認証する信頼できるシステムです。
https://help.salesforce.com/s/articleView?id=000352937&type=1
ちなみに、IdP側でMFAをしているといっても、それがメール、ショートメッセージ、電話はNGになります。
次のオプションによってワンタイムパスコードを配信することは認められません。下記の方法は本質的に、傍受やなりすまし、その他の攻撃に対して脆弱であるためです。
・メールメッセージ
・テキストメッセージ
・電話連絡
Microsoft (Azure AD)側の設定
今回はSalesforceが許可しているひとつの方法である、「Microsoft Authenticator」を設定していきます。
・Salesforce Authenticator モバイルアプリケーション (App Store® または Google Play™ で入手可能)
・時間ベースのワンタイムパスワード (TOTP) 認証アプリケーション (Google Authenticator™、Microsoft Authenticator™、Authy™ など)
・WebAuthn または U2F をサポートするセキュリティキー (Yubico の YubiKey™、Google の Titan™ セキュリティキーなど)
・Touch ID®、Face ID®、Windows Hello™ などの組み込み Authenticator
条件付きアクセスの設定
以下より条件付きアクセスを設定していきます。
設定内容としては、「すべてのクラウドアプリに対して、多要素認証を要求する」としています。
ちなみに、いきなりすべてのユーザーを指定して実施する怖いので、テストユーザーで挙動を確認してから実施することをお勧めします。
![](https://assets.st-note.com/img/1636779127670-Y8dMpCjPo4.png)
![](https://assets.st-note.com/img/1636774065882-3YdkB25917.png)
ユーザー側の挙動
ユーザー側では初回ログイン時に以下のような画面が出力されます。そのため、ユーザーがいきなりログインできなくなる…といった心配はありません。(びっくりするので事前に変えることは連絡しましょう)
![](https://assets.st-note.com/img/1636774253302-czaiPmrowe.png?width=1200)
「次へ」をクリックするとMicrosoft Authenticatorの案内が出てきます。これに従ってスマートフォンにMicrosoft Authenticatorをインストールしてもらいます。
![](https://assets.st-note.com/img/1636774313562-KBgLpTXjZG.png)
ちなみに、Microsoft Authenticatorの画面キャプチャはセキュリティポリシー上キャプチャできないので割愛します…
認証すると、次のメソッドで電話番号を登録できます。
…がここは設定しないでブラウザを閉じます。
設定してしまうとMFAとして電話番号やメールアドレスを使えるようになってしまい、Salesforceの要件を満たさなくなってしまいます。
![](https://assets.st-note.com/img/1636774854801-qvSoiW5odV.png)
(他のシステムへの影響やMS365としての影響は無視しています。いずれ必要になる可能性はあります)
理想で言えば、電話番号を用いた認証などを拒否したいのですが、今回は調べきれておりません。
すでに電話などの多要素認証を設定している場合
もしすでに多要素認証を設定している場合は、セキュリティ情報から追加することが可能です。追加後に規定のサインイン方法を変更いただくか、電話などの登録済みの認証方法を削除してもらいましょう。
![](https://assets.st-note.com/img/1636775586005-1N87Unz4U2.png?width=1200)
![](https://assets.st-note.com/img/1636775764320-7KtQZnRiq1.png?width=1200)
Salesforce側の設定変更を忘れずに
ということで今回はSalesforceにSSOするためのMS365の設定をやってきました。
Salesforceの設定もあるのでそちらも忘れずに行ってください。
SSOではなく、ID/Passでログインするアカウントや、SSOとID/Passの両方を使う場合もあると思います。
それらはSalesforce側で2要素認証の設定が必要になりますし、それをプロファイルで必須化しておく必要があります。
その場合Salesforce Authenticatorを使うか、TOTP認証アプリケーションを用いることになります。
MFA必須化の期日は2022 年 2 月 1 日になりますので焦らないよう事前にご対応くださいー!