Microsoft Azure ActiveDirectory認証
オンプレ版は、Microsoft Azure ActiveDirectory(通称 Azure AD)による認証に対応しています。
設定方法は以下の通りです
必要なもの
HTTPSで動いているオンプレ版Scrapbox
Microsoftアカウント
Microsoft Azureにおける設定
Azure Active Directory -> App registrations に移動します
注: すでにAppを登録済みのときは、All applicationsをクリックし表示を切り替えてください
New Regstrationをクリックします
Nameにアプリ名 "Scrapbox for your-comapny-name" を入力ます
Supported account typesはデフォルトのオプションを選びます
Redirect URIs セクションで、アプリURL + /auth/microsoft/callback を入力します
例: https://example.com/auth/microsoft/callback
Registerをクリックします
以下、Azure Active Directory -> App registrations -> アプリ名 で辿り着く画面を「ホーム」と呼びます。
ホーム -> Authentication をクリックします
さらに Advanced settings セクションの Implict grant にて、ID tokens のチェックをONにします
最後に、画面上部のSaveをクリックします
ホーム -> Certificates & secretsに移動します
Clients secretsセクションで、New client secretをクリックします
Add a client secretのdescriptionに"SSO"などと入力します(キー名はなんでもよいです)
Expiresを選びます
Addをクリックします
ここで表示された秘密のキーをメモします
CLIENT_IDの確認
Application IDが、CLIENT_IDになります
ホーム -> Overview に移動し、Application (client) ID をメモします
Tenant IDの確認
ホーム -> Overview に移動し、Tenant IDをメモします
Azure Portalを二つ以上をご利用の企業様
Propertiesから、Multi-tenantedをYesに設定してください
Scrapboxにおける設定
以下の3つを設定ファイルに追加してください。
MICROSOFT_CLIENT_ID:
上記Application ID
MICROSOFT_CLIENT_SECRET:
Clients secretsで取得した秘密のキー
MICROSOFT_TENANT:
4ef22f8b-9141-4a70-8682-63a3916c28c6のような
UUIDScrapboxを再起動します
$ docker-compose down
$ docker-compose up -d
以上で設定完了です
ログイン画面でLog in with Microsoftが表示され、無事ログインできれば完了です
Happy Scrapbox Life!