Office365のSAML連携手順

Office 365とOneLoginを連携して、SAML認証でログインするための手順を紹介します。

はじめに

1. Office 365でSAMLを設定するためのプラン

Office 365での、SAML連携は、以下のプランでサポートされています。

https://products.office.com/ja-jp/business/compare-more-office-365-for-business-plans

2. 既存のADFS連携について

すでにADFS連携している場合は、その設定を無効化する必要があります。

https://onelogin.service-now.com/kb_view_customer.do?sys_kb_id=KB0010419

3. Office 365上のアカウントについて

Office 365で使用しているドメインと、OneLoginで使用しているドメインが一致している必要があります。
SAML認証を行う場合、Office 365のユーザーに設定されているメールアドレスと、OneLogin上で利用しているメールアドレスが一致している必要があります。

4. Office 365でプライマリドメインをフェデレーションするドメインはありますか。

プライマリドメインをフェデレーションすることはできません。Office 365のデフォルトドメインをxxx.onmicrosoft.comなどの別のドメインに切り替える必要がありす。

https://docs.microsoft.com/ja-jp/office365/admin/setup/domains-faq?redirectSourcePath=%252fclient%252f1272bad0-4bd4-4796-8005-67d6fb3afc5a&view=o365-worldwide

5. フェデレーションドメイン外のグローバル管理者アカウントを持っていますか。

SAML連携を行っている際に、誤った設定をしてしまい、ドメインの認証でOffice 365にログインできない自体が起きた場合に備えて、xxx@xxx.onmicrosoft.comドメインのユーザを設定しておくことを推奨します。

6. OneLoginで複数のOffice 365のドメインを統合できますか。

複数のドメインを所有している場合、ドメインごとに、OneLoginのコネクタを設定する必要があります。
各ドメインに個別で構成された、X.509証明書を利用することが推奨されます。
Office 365のOneLoginコネクタを作成する前に、新しい証明書を設定する必要があります。
OneLoginに管理者アカウントでログインし、"Setting > Certificates" を押します。そして、"NEW"を押して、新しい証明書を発行します。
この証明書はSAML設定をセットアップするときに使用します。

7. SyncLoginsを使用していますか。

OneLoginはSyncLoginsを使用してユーザーを照合しません。

8. SAML設定のテストを行いましたか。

以下の設定手順を本番環境で行う前に、テスト環境で実施し、正しく動作することを確認してください。
また、本番環境にロールアウトする場合は、営業時間外にSSOを有効にしてテストを行いリリースすることを推奨します。

Office 365コネクタの設定

OneLoginに管理者アカウントでログインし"Apps > Add Apps"を押します。

2018-11-14_17h17_30.png

検索欄に"Office 365 v2"と入力し、表示されたコネクタを選択します。

2018-11-14_17h22_10.png

OneLogin上の表示名を設定し、”SAVE”を押します。

2018-11-14_17h24_44.png

"Configuration"タブを開き、利用しているOffice 365のAPIに接続するために必要な情報を入力します。

2018-11-14_17h30_16.png

1. "your-domain.com"にOffice 365連携させる、ドメインを入力し"VERIFY"を押します。
ドメインが確認されると、下部の"AUTHENTICATE"ボタンが有効になります。
※すべてのユーザーが、このドメインを使用して、Office 365とOneLoginのメールアドレスが一致している必要があります。

2. Office 365 V2 (zure Graph) OAuthとOffice 365 V2(Microsoft Graph) OAuthの"Authenticate"ボタンを押して、各APIのアクセストークンを取得しています。以前に承認していない場合、OneLoginがOffice 365のWindows Azure Active Directoryにアクセスすることを許可することに、同意要求が表示されます。

3. OneLoginへのアクセスを認証して、認証プロセスを完了するように求めるダイアログが表示されます。Office 365アカウント名をクリックすると、Office 365 が表示されます。アカウントを選択するか、プロンプトが表示されたら、サインインします。

4. 認証すると、"Authenticate"ボタンが"Clear Token"になります。

"Parameter"タブに移動し、Office 365とOneLoginの属性を設定します。
Fieldの項目名がOffice365上の値となっており、それと対になるOneLogin側の項目がValueとなります。

2018-11-14_18h09_11.png

Display Name

Office 365上に表示されるユーザー名を設定します。
これを任意で設定しない場合は、デフォルトで"{lastname}{firstname}"になります。

Immutable ID

Immutable IDは常にAD IDに設定する必要があります。OneLoginがActive Directoryと連携しておらず、ADからOffice 365にProvisioningするImmutableIDがない場合は、OneLogin側でAD IDを生成します。
※誤ったImmutable IDが設定されている場合、SSOに失敗します。

注意

Immutable IDは不変です。それが変更されることがありません。

"Access"タブに移動し、OneLogin側でOffice 365へSAML SSOさせるユーザーのロールを割り当てます。

2018-11-14_18h19_27.png

"SSO"タブから、OneLoginとOffice 365との証明書交換を行い、自動的にWS-Federationの構成を行います。
手動で設定する場合は"Manual CONFIGURATION"に進みます。

Office 365で複数のドメインをフェデレーションする場合は、ドメインごとに個別のX.509証明書を利用することが推奨されます。
OneLoginに管理者アカウントでログインし、"Setting > Certificates" を押します。そして、"NEW"を押して、新しい証明書を発行します。
次の手順を実行する前に、”MANUAL CONFIGURATION”タブを開き”Change”を押します。

2018-11-15_15h57_07.png

その後、該当する証明書を選択し、"Continue"を押します。

2018-11-15_15h58_55.png

AUTOMATIC CONFIGRATION

1. "Enable automatic SAML configuration"のボタンをオンにして、"ONE CLICK"ダイアログを開きます。

2. プロンプト内の"GOT IT. CONTINUE"を押して、表示された内容に従い"WS-Federation"の設定を完了します。
設定が成功した場合は、成功した画面が表示されます。

WS-Federationの構成が失敗した場合、エラーメッセージが表示されます。
エラーを解決するにはエラーメッセージに表示された変更を行うか、Configuration、Access、Parameterの設定を確認後、もう一度実行してください。
失敗し続ける場合は"MANUAL CONFIGURATION"から設定を行うことができます。

3. WS-Federationの設定が成功し、OneLoginのユーザーがOneLogin経由でOffice 365へSSOできることを確認します。

設定を行っているユーザーがOneLoginの権限でOffice 365が割り当てられ、Office 365のアカウントを称ししているユーザーの場合、ダイアログに"Verify"ボタンが表示されます。
ボタンを押すことで、新規タブでOffice 365が表示されて、正常に動作すれば完了です。

※設定を行っているユーザーがOffice 365のアカウントを所有していない場合は、別ブラウザなどから、Office 365アカウントを利用して確認を行う必要があります。

4. OneLoginの"SSO"タブに戻り、"Enable automatic SAML configuration"がオンになっていることを確認します。

このスイッチをオフにすることで、SSOを無効化できます。

 MANUAL CONFIGURATION

OneLoginでは、自動的にフェデレーションの設定を行うことができます。(AUTOMATIC CONFIGRATIONを参照)
ただし、手動で設定を行う場合は、以下の手順で行ってください。

Office 365コネクタの"SSO"タブを開き、"MANUAL CONFIGURATION"を押します。

"X.509証明書","SHA-1フィンガープリント","Issuer URL","WS-Federation Web SSO Endpoint"を手元にコピーしておきます。

2018-11-15_18h45_16.png

先程手元にコピーした、値を使用し、Azure powerShellから設定を行います。
※手順が不明な場合は、お問い合わせください。

Azure PowerShellについては以下を参照ください。
https://docs.microsoft.com/ja-jp/powershell/azure/overview?view=azurermps-6.12.0

https://docs.microsoft.com/en-us/powershell/module/msonline/Set-MsolDomainAuthentication?view=azureadps-1.0

注意

Office 365で複数のドメインをフェデレーションする場合は、ドメインごとに個別のX.509証明書を利用することが推奨されます。
OneLoginに管理者アカウントでログインし、"Setting > Certificates" を押します。そして、"NEW"を押して、新しい証明書を発行します。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
他にご質問がございましたら、リクエストを送信してください