concrete5 に Google アカウントでログインしてセキュリティを向上させる方法

菱川拓郎
菱川拓郎

コンクリートファイブジャパン 菱川です。今回は、concrete5 のログインに Google アカウントを利用する設定方法についてご紹介します。

concrete5 には、標準で concrete5.org, Facebook, Twitter, そして Google でログインすることができる機能が搭載されています。もちろん、concrete5 自体もユーザー管理とログインの機能を搭載していますが、これらの外部のサービスを組み合わせることで、セキュリティを向上させることが可能です。

特に、Google や Facebook などのサービスはアカウントの乗っ取りをはじめとしたセキュリティ上の課題に対応するため、2段階認証などの高度な機能を備えています。CMS へのログインに、これらの外部サービスを利用することで、セキュリティを高めることが可能です。

 

Google 側で行う準備

Google Developers Console のプロジェクトページにアクセスし、「プロジェクトを作成」ボタンをクリックします。

新しいプロジェクトの作成画面

プロジェクトを作成したら、APIの利用を開始します。「Google API を利用する」リンクをクリックします。

「Google API を利用する」リンク

認証情報タブをクリックし、「create credentials」ボタンをクリックし、「OAuth クライアント ID」を選択します。

認証情報の設定画面

OAuth クライアント ID を選択すると、「同意画面を設定」ボタンが表示されますので、クリックすると、Google での認証時に表示される同意画面の設定が可能です。

OAuth 同意画面の設定画面

同意画面の設定を保存すると、OAuth「クライアントID」と「クライアントシークレット」が表示されます。こちらは、concrete5 側の設定で必要ですので、メモっておいてください。

OAuth クライアントIDとクライアントシークレットの表示画面

次に、クライアントIDの設定画面に移ります。こちらでアプリケーションの種類で「ウェブアプリケーション」を選択し、「承認済みのリダイレクト URI」に次のように入力します。yourdomain.com はお使いのサイトのドメインに合わせて変更してください。

https://yourdomain.com/ccm/system/authentication/oauth2/google/callback

最後に、ドメインの認証を行います。「ドメインの確認」ボタンをクリックし、「ドメインを追加」ボタンをクリックし、サイトのドメインを入力します。以上でGoogle側の準備は完了です。

 

concrete5 側の設定

concrete5 では、Google を認証タイプとして有効にする必要があります。ツールバーから「認証タイプ」とタイプして設定ページを開きましょう。

ツールバーに「認証タイプ」と入力

システムに登録されている認証タイプの一覧が表示されます。緑のハイライトがかかっているものが、現在有効な認証タイプです。このページで、 google をクリックします。

認証タイプの画面で google をクリック

次に、Google 認証タイプの設定を行います。すでに発行したクライアントIDとクライアントシークレットを入力します。ドメインフィルタリングは、認証に使用できる Google アカウントをドメインで制限することができる機能です。社内向けに認証させる場合は、自社の Google App ドメインを入力しておきましょう。

Google 認証タイプの設定画面

設定が入力できたら、「有効」ボタンをクリックして、設定を保存するとともに、Google 認証タイプを有効にしましょう。これで、ログイン画面に Google が追加され、Google アカウントでログインできるようになります。

Google 認証タイプが有効になったログイン画面

 

concrete5 ユーザーと Google アカウントの接続

以上で Google 認証の設定が完了しましたが、これだけではユーザーは Google アカウントを使ってログインすることができません。concrete5 のアカウントのマイページからあらかじめ Google アカウントと関連付けておく必要があります。

まず、ログイン状態で自分のプロフィールページに移動します。

自分のプロフィール画面へのリンク

プロフィールページで「プロフィール編集」リンクをクリックし、表示される画面で「Google アカウントを接続」ボタンをクリックします。

「Googleアカウントを接続」ボタンの位置

ボタンをクリックして表示される画面から、このアカウントへのログインに使いたい Google アカウントでログインすれば、準備完了です。次回からは、concrete5 のID・パスワードではなく、Google アカウントでログインできるようになります。

許可のリクエスト画面

このように、外部アカウントでログインさせるにはあらかじめアカウントを接続する必要がありますが、うまく使えば、CMSを利用する際のセキュリティを高めることが可能です。例えば、concrete5 アカウントでのログインの場合はIPアドレスで制限し、Google アカウントではIPアドレスで制限しない、というカスタマイズを行った例では、高いセキュリティと社外でも更新したいというニーズの両方を共存させることができました。そのような追加カスタマイズや、設定自体にお困りの際は、ぜひご相談ください。

お問い合わせはこちら