SalesforceでSSO(サービスプロバイダ:Google Apps for Work編)

みなさん、こんにちは。
これまでActive DirectoryやGoogleをIdpに、SalesforceをSPとしてSSOやりたいという声がありましたが、最近はSalesforceをIdPにして他サービスのIDをSalesforceで管理するというお話も聞くようになってきました。
今回はSalesforceをIdPに、Google Apps for Work (以下Google Apps)をSPにするシングルサインオン(SSO)の設定をご紹介したいと思います。

Salesforceのドメイン設定

まず、設定のドメイン管理から私のドメインを選択し、新しいドメインを登録します。

次にIDプロバイダの有効化と証明書のダウンロードをします。

証明書のダウンロードができたら、設定のアプリケーションから接続アプリケーションの新規作成をします。
接続アプリケーション、API参照名、取引先責任者メールは任意で設定できます。
SAML有効化にチェックを入れるとエンティティID、ACS URL、件名種別、名称ID形式が設定できるので以下のように設定します。

  • エンティティID:google.com/a/Google Appsドメイン名
  • ACS URL:https://www.google.com/a/ドメイン/acs
  • 件名種別:統合ID(ユーザオブジェクトの統合IDをGoogle Appsのキーとする場合)
  • 名称形式:urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

接続アプリケーションが作成されたら、SSOを利用するユーザのプロファイルを設定します。
接続アプリケーションを開き、「プロファイルのプロファイルを管理する」から、対象プロファイルを選択します。

ここまで設定できるとSalesforce側の設定は完了です。あとはGoogle Apps側の設定を残すのみです。

GoogleApps設定

Google AppsではSPとしての設定を行います。

まず、http://admin.google.comへ接続します。

接続されましたら、セキュリティを選択し、シングルサインオン(SSO)の設定を行います。

シングルサインオン設定の「サードパーティのIDプロバイダでSSOを設定する」にチェックを入れ、ログインページのURL等を設定します。
設定内容は以下の通りです。

  • ログインページのURL:https://Salesforceのマイドメイン/idp/endpoint/HttpRedirect
  • ログアウトページのURL:https://Salesforceのマイドメイン/
  • パスワード変更URL:https://Salesforceのマイドメイン/_ui/system/security/ChangePassword
  • 認証の確認:SalesforceのIDプロバイダ設定でダウンロードした証明書をアップロードします。
  • ドメイン固有の発行元を使用:チェックON

設定を保存して設定完了となります。

動作確認

それではGmailにログインしてみましょう。
https://mail.google.com/a/ドメイン名/ に接続します。

そうするとSalesforceのログイン画面ができます。
では、Salesforceにログインしてみましょう。

Salesforceにログインするとhttps://www.google.com/a/ドメイン/acs等を経由してGmailにログインできました。

GoogleApps連動機能をつかってみる

Salesforceが標準で提供されている機能であるGoogle Apps連携。
これはGmailや、GoogleドキュメントをSalesforceで利用できるようになる、とても便利な機能ですが
SSOを設定しておくとより便利な機能となります。

設定すると取引先責任者にGmailのリンクが出てきますので、こちらからメールを送信します。

SSO設定が完了していますので、GoogleAppsのログイン画面を経由せずに直接メール送信画面が表示されました。

ここからメールを送付すると取引先責任者の活動履歴に送信したメールの内容が転記されるので、該当顧客とのやりとりを部内のメンバーと共有することも可能です。
※こちらもSalesforceのGoogleApps連携の標準機能です。

まとめ

SalesforceとGoogle Appsで試してみましたが、非常にユーザビリティが高いシステムをノンコーディングで構築することができました。
CRMをSalesforceで、グループウェアをGoogle Appsで運用されている方は結構いらっしゃるとおもいます。そんな方は是非両システムをSSOでつなぎ、シームレスなエコシステムを活用してみてはいかがでしょうか。