コンテンツまでスキップ

【Okta】OktaからNotionにSAML認証でシングルサインオンしてみた

 

はじめに


こんにちは、 ネクストモード株式会社 のSaaSおじさん久住です

ネクストモードではID統合管理(IDaaS)のOktaを利用して各SaaSへのシングル・サインオンやプロビジョニングの一元管理しています。 また、ナレッジ共有にオールインワンワークスペースのNotionを利用しています

NotionのエンタープライズプランではSAML2.0、SCIM2.0に対応しており、SAML認証でのシングルサインオンの設定が可能なので、今回はNotionへのOktaからのSAML認証でのシングルサインオンを設定してみました

手順


大まかな手順は下記の通りです

  • メールドメインの検証(Notion)
  • Notionアプリ作成(Okta)
  • Notion側でのSAML認証設定(Notion)

やってみた


メールドメインの検証(Notion)

OktaとNotionでSAML認証の設定を実施する前にメールドメインの検証をする必要があります

まず、該当のワークスペースの設定ページの 認証とプロビジョン検証済みドメイン という項目で ドメインの追加 をクリックします

Okta-Notion-SAML-001

SSO対象のドメインを入力して次へをクリックします

Okta-Notion-SAML-002

DNSに入れる必要があるTXTレコードが表示されるため、コピーしDNSにレコードを投入します

TXTレコードを作成したら検証するをクリックします

Okta-Notion-SAML-003

レコード追加から数分で完了しましたが、DNSレコードの伝達で最大72時間ほどかかるそうです

Notion-Okta-SAML-003

設定が反映されると、下記のように自動的にメールドメインにドメインが入ります

Okta-Notion-SAML-004

Notionアプリ作成(Okta)

Oktaにて、Notionアプリを作成します

Oktaの管理画面より Applications  -> Browse App Catalog 選択しします

Notion-Okta-SAML-005

Notion-Okta-SAML-006

 Sign-On Options にてSAML2.0を選択します

Notion-Okta-SAML-007

次に、Advanced Sign-on SettingsにてOrganization IDを入力します

まずNotionの設定にあるSAML SSOの設定を編集をクリックします

Okta-Notion-SAML-005

Okta-Notion-SAML-006

Oktaの管理画面上に移動し、Advanced Sign-on SettingsのOrganaization IDの欄にACS URLのsso/saml/以降の乱数をコピーして貼り付けます

Notion-Okta-SAML-008

最後にユーザーをNotionアプリにアサインします

Notion-Okta-SAML-009

こちらでNotionアプリの作成は完了です

Notion側でのSAML認証設(Notion)

次にNotionでSAML認証の設定をします

Oktaの管理画面からNotionアプリの Sign OnView Setup Instructions をクリックします

Notion-Okta-SAML-010

IDPメタデータのXMLがコピーできるので、Notionの設定画面のSAML SSO設定の編集から IDプロバイダーのメタデータXML 欄にペーストします

Okta-Notion-SAML-007

SAMLを有効にする場合は SAML SSOを有効にする にチェック、SAMLでのシングルサインオンを強制する場合は ログイン方法をSAML SSOのみにします

またSAML SSOでログインした際に自動的にユーザーが作成されるJITプロビジョニングを無効化する場合はアカウントの自動作成のチェックをオフにしておきます

Okta-Notion-SAML-008

以上で設定は完了です

 接続確認

SP-initiatedの場合

まずはSP-initiated(Notionに直接アクセスする場合)の遷移を見てみます

Notionページにアクセスすると一番したに SAML SSOでログイン という記載がありますのでクリックします

Notion-Okta-SAML-012

メールアドレスを入力して SAMLでログイン をクリックします

Notion-Okta-SAML-013

OktaにリダイレクトしてサインインするとNotionページにアクセスできました

Notion-Okta-SAML-014

IdP-initiatedの場合

つぎにIdP-initiated(Oktaからアクセスする場合)の遷移を見てみます

OktaでNotionアプリがユーザーにアサインされると、ユーザーダッシュボードにNotionが表示されますので表示されたNotionアプリをクリックします

Notion-Okta-SAML-015

クリックするとNotionへSAML認証でログイン出来ます

Notion-Okta-SAML-016

SP-initiatedでもIdP-initiatedeでも問題なくNotionへSAML認証でシングルサインオンできることを確認できました!

さいごに


NotionとOktaのSAML認証連携についてご紹介しました

SAML認証に切り替えることで、IDを集約できるだけでなく、NotionのエンタープライズプランはSCIM APIにも対応しているのでプロビジョニングの設定をすることで入退社に伴うID管理も適切に実施することが可能となります

プロビジョニングについても後日ブログにしようと思います