OneLoginでWordPressのID管理をし隊

この記事は1年以上前に書かれたものです。
内容が古い可能性がありますのでご注意ください。
情報システム課の宮澤です。
今回は、OneLoginを利用して、WordPressのID管理を簡単にできて、セキュリティの強化も図れる方法を紹介します。

前提条件

今回の記事では、以下の2つが揃っていることが前提で記載しています。
WordPressの環境はAMIMOTO AMIを利用することで、AWS上に簡単に準備出来ます。
  • OneLogin(Enterprise以上)が利用できる
  • WordPressがセットアップされている

OneLogin側の設定

OneLoginに管理者IDでログインし、”Apps>Add Apps”に移動します。 スクリーンショット_2016-05-31_16_44_18 検索欄に”WordPress”と入力し、表示された”WordPress”のSAML2.0コネクタを選択します。 スクリーンショット_2016-06-02_18_23_48 OneLogin上の表示名を設定して”SAVE"を押します。 スクリーンショット_2016-06-02_18_24_29 "Configuration"タブを開き、Consumer URLとLogout URLを以下の形式にしたがって入力します。
Consumer URL:http://{prefix}.{your_subdomain}.com/wp-login.php?saml_acs
Logout URL:https://{prefix}.{your_subdomain}.com/wp-login.php?saml_sls スクリーンショット_2016-06-02_18_27_01 "Palameters"を開き設定を行いますが、設定内容は初期状態で問題無いです。 スクリーンショット_2016-06-02_18_27_34 SSOタブを押して”View Details”を押します。 スクリーンショット_2016-06-02_18_28_21 以下のアイコンをクリックすることでX509証明書をクリップボードにコピーできます。
※次項のWordPress側の設定で利用します。 スクリーンショット_2016-06-02_18_28_44  

WordPress側の設定

WordPressの管理画面にログインして、"プラグイン>新規追加"に移動します。 スクリーンショット_2016-06-14_15_01_28 検索欄に"OneLogin SAML SSO"と入力して検索して、”OneLogin SAML SSO”の”今すぐインストール”を押します。 スクリーンショット_2016-06-14_15_10_52 プラグインインストール実行の画面が表示され、完了したら”プラグインを有効化”を押します。 スクリーンショット_2016-06-14_15_12_00 ナビゲーションメニューの”設定>SSO/SAML Settings”に移動します。 スクリーンショット_2016-06-14_15_18_39 SSO/SAML Settingsのページで、”IDENTITY PROVIDER SETTINGS”と”ATTRIBUTE MAPPING”の2つの項目について以下のように入力を行います。
”ATTRIBUTE MAPPING”の項目を設定することで、OneLoginの情報をWordPressのユーザーにマッピングすることができます。

IDENTITY PROVIDER SETTINGS

  • IdP Entity ID: Issuer URL
  • Single Sign On Service URL: SAML 2.0 EndPoint(HTTP)

  • Single Log Out Service URL: 空欄または、 <http://app.onelogin.com/client/apps>

  • X.509 Certificate: OneLogin上で確認したX.509証明書

スクリーンショット_2016-06-14_15_46_15

ATTRIBUTE MAPPING

  • Username: User.Username

  • E-mail: User.email

  • First Name: User.FirstName

  • Last Name: User.LastName

  • Role: memberOf

スクリーンショット_2016-06-14_15_45_57

”変更を保存”を押して、設定は完了です。
さらに、
OPTIONSの項目の"Create user if not exists"を有効にすることで、初回ログイン時にユーザーがいない場合は、自動的にOneLoginのユーザー情報を利用してユーザーを作成することもできます。

まとめ

WordPressにOneLoginのSSOプラグインを導入して設定することで、簡単にOneLoginからのSSOを実現することができました。
これを行うことで、ユーザーはパスワードを利用せずにWordPressを利用可能になり、管理者はID管理がOneLoginに一元化されるので、運用負担が軽減されます。
例えば、AMIMOTOでWordPressを運用していてID管理をしっかりしたいという要件を満たすことができます。
また、WordPress以外でもIDP連携可能なWebアプリケーションであれば、同様の設定をOneLoginで行うことができます。

AWS運用自動化サービス「Cloud Automator」無料トライアルはこちらから

COMMENT ON FACEBOOK