はじめに
Dropbox、Slack、Zendesk、Office365など業務で使用するSaaSが増えると、アカウント管理も大変です、個人であればLastPassや1Passで管理する手もありますが、仕事で組織やグループ毎に管理となると
AD/LDAPやCognitoなど認証基盤を用意してSSOの仕組みを準備するまで気が遠くなります。
それなら認証基盤もクラウドサービスを利用すれば楽ができると思い、今回 IdMaaSで有名なAuth0を使用したNew Relic SSOを試してみたのでご紹介します。
使用するサービス
New Relic (SSO Client)
- パフォーマンス監視サービス
- プラン:PRO (SSO機能はProプランが必要)
Auth0 (SSO Authorization Server)
- 認証サービス
- プラン:Free
Auth0 設定
気になるAuth0の料金ですが、月額0円のFreeプランでも”7,000アクティブユーザ&無制限ログイン”
可能です。社内利用やテスト環境で使用するには十分だと思いますので、まずはアカウント作成して
ログインしてください。詳細については、Auth0 Pricingをご参考ください
1.ユーザDatabaseの作成
Google、Facebook、Microsoftなどの各種ソーシャル認証も簡単に追加することができますが、今回はAuth0にユーザ情報のDBを作成して管理します。
Database 作成
①[Connections] --> [Database]を選択
②[CREATE DB CONNECTION]ボタンでユーザDatabaseを作成します
各種設定
① DBの名前を入力
② アカウント情報にメールアドレス以外にユーザネームを追加したい場合はONにします
③ 認証画面で新規ユーザ追加をDisableにしたい場合はONにします
2.New Relic SSO 設定
INTEGRATION 作成
①[SSO Integrations]を選択
②[CREATE SSO INTEGRATION]ボタンを押すと、統合できるサービス一覧が表示されます
INTEGRATIONでNew Relicを選択
INTEGRATIONにあるサービスであれば簡単に設定できます。ないサービスはマニュアルでSSO設定も可能です。
SSO INTEGRATION 名を入力
各種設定
① SSOしたいNew Relic アカウントIDを入力
② Auth0の証明書をダウンロード(後でNew Relic側の設定で必要です)
③ Remoto Login URLをコピー&メモ(後でNew Relic側の設定で必要です)
④ Logout URLをコピー&メモ(後でNew Relic側の設定で必要です)
ユーザDatabaseの選択
このNew Relic IntegrationのSSO認証で使用するユーザデータを選択します
① [Connections]を選択
② 「1.ユーザDatabaseの作成」で作成したユーザDatabaseが表示されるので、有効(ON)にします。
3.ユーザの追加
ユーザ作成
①[Users]を選択
②[CREATE USER]ボタンを押すと、User登録画面がポップアップ表示されます
ユーザDatabaseの選択
SSOを使用するユーザを追加していきます
① Emailアドレスを入力(Verifyの為、作成後にこのEmailアドレス宛てメールが送信されます)
② パスワードを入力
③ 「1.ユーザDatabaseの作成」で[Requires Username]を有効にした場合は、ユーザ名を設定できます
④ 「1.ユーザDatabaseの作成」で作成したDatabaseを選択します
New Relic 設定
1.SSO 設定
SAML設定画面の表示
右上メニューから[Account settings]を選択
左メニューから[Single sign-on]を選択
SAML設定
① Auth0の「2.New Relic SSO 設定」でダウンロードした証明書をアップロード
② Auth0の「2.New Relic SSO 設定」でコピー&メモした Remote login URLを入力
③ Auth0の「2.New Relic SSO 設定」でコピー&メモした logout URLを入力
④ [Save my changes]ボタンで設定を反映
2.SAML認証確認
SAMLログイン 確認
SAML設定内容が正しく動作するか確認します
認証画面
SAML設定内容が正しければ、Auth0のデフォルト認証画面が表示されます。
auth0設定の「3.ユーザの追加」で追加したユーザ情報でログインしてみます
SAML有効化
Auth0を使用した認証に問題なければ、[Enable SAML Login]ボタンを押してSAML認証を有効にします
SAML認証状況など
① 現在の設定と状態について確認できます
② SAML認証をやめたい場合は[Disable SAML login]ボタンを押します
③ 現在の設定を変更したい場合は[CONFIGURE]を押します
3.SSO認証
New Relic 再ログイン
一旦ログアウトして、下記アカウントIDを指定して再ログインすると、auth0の認証画面にリダイレクトされます。
https://rpm.newrelic.com/accounts/"NewRelicアカウントID"/
これでAuth0で設定したアカウント(Username又はEmail)でログインすることができます。
またGravatarを使用しているEmailであればユーザアイコンも表示されました!!
さいごに
Auth0を使用すれば無料のFreeプランでもで簡単にSAML認証やソーシャル認証を組み込むことができました。今回のNew Relicの様に、INTEGRATIONにあるサービスであれば10分もあれば、Auth0と統合することが可能です。INTEGRATIONになくても、WebアプリケーションやIOS用の専用テンプレートが用意されているので、マニュアルで設定&調整して認証基盤として使用する事も可能です。
メニューを見るとRulesやHooksなど、便利そうな機能が結構ある様です。もう少し触ってみて役立つ内容であれば、またご紹介したいと思います。