Okta

Salesforce用SAML 2.0の構成方法

このドキュメントには、Salesforce用SAML 2.0を構成するための手順(以下のSAMLの構成を参照)に加え、SalesforceとOkta間でSPが起点となるSAMLを構成する方法Salesforceで委任認証を構成する方法(任意)など、必要になる可能性のある役立つ追加情報が含まれています。


目次

対応機種

Okta/SalesforceのSAML統合では現在、次の機能をサポートしています。

記載されている機能の詳細についてはOkta Glossary(Okta用語集)をご覧ください。


SAMLの構成

  1. こちらをクリックして、Oktaのユーザー管理設定に使用したものと同じ管理者ユーザー名とパスワードトークンでSalesforceにログインします。

  2. 次のいずれかを行います。

    • Salesforce Classic[Setup(設定)] > [Security Controls(セキュリティー管理)] > [Single Sign-On Settings(シングルサインオン設定)]にアクセスします。

      salesforce_new_a.png

    • Salesforce Lightening Experience:歯車アイコンをクリックし、[Setup(設定)] > [Identity(アイデンティティ)] > [Single Sign-On Settings(シングルサインオン設定)]にアクセスします。

      salesforce_new_cc.png

  3. [Single Sign-On Settings(シングルサインオン設定)]ページで[Edit(編集)]をクリックします。

    salesforce_new_1a.png

  4. [SAML Enabled(SAML有効)]ボックスにチェックを入れてSAML Single-Sign On(SAMLシングルサインオン)を有効にし、[Save(保存)]をクリックします。

    salesforce_new1.png

  5. [New(新規)]をクリックします。

    salesforce_new_b.png

  6. 次を入力します。

    特に指示のない限り、デフォルト値のままにしておきます。

    • Name(名前):ご希望の名前を入力します。

    • SAML Version(SAMLバージョン):これが2.0に設定されていることを確認します。これはデフォルトで有効のはずです。

    • Issuer(発行者):以下をコピーし、貼り付けます。

      Okta管理者ダッシュボードにサインインして、この値を生成します

    • Identity Provider Certificate(IDプロバイダー保証書):次の証明書をダウンロードし、このフィールドにアップロードします。

      Okta管理者ダッシュボードにサインインして、この値を生成します

    • Identity Provider Login URL(IDプロバイダー ログインURL):以下をコピーし、貼り付けます。

      Okta管理者ダッシュボードにサインインして、この値を生成します

      このURLはユーザーがSalesforceに直接ログインしようとしたり、Salesforce内のディープリンクをクリックしたりしたときに認証されていない場合、ユーザーを認証します。これはSPが起点となるSAML認証を有効にする場合に必要です。

    • Custom Logout URL(カスタムログアウトURL):任意。以下をコピーし、貼り付けます。

      Okta管理者ダッシュボードにサインインして、この値を生成します。

    • API Name(API名):ご希望のAPI名を入力します。

    • Entity ID(エンティティーID)

      • カスタムドメインを設定している場合、https://[customDomain].my.salesforce.comを使用します。

      • カスタムドメインを設定していない場合、https://saml.salesforce.comを使用します。

    • [Save(保存)]をクリックします。

    sf_new1.png

  7. 次を行います。

    • [Login URL(ログインURL)]の値を保存します

    • (SLOでは任意):[ログアウトURL]の値を保存します

    • (SLOでは任意):[Download Metadata(メタデータをダウンロード)]をクリックします

    ログインURL、任意でログアウトURL、ダウンロードメタデータをコピーします

  8. OktaでSalesforceアプリの[General(全般)]タブを選択し、[Edit(編集)]をクリックします。

    • カスタムドメインを使用している場合、[Custom Domain(カスタムドメイン)]フィールドにその値を入力しますが、そうでない場合は空白のままにします。

    • [Save(保存)]をクリックします。

  9. 引き続きOktaでSalesforceアプリの[Sign On(サインオン)]タブを選択し、[Edit(編集)]をクリックします。

    • [Advanced Sign-on Settings(高度なサインオン設定)]セクションまでスクロールダウンし、上記のステップ7でコピーした[Login URL(ログインURL)]の値をそれぞれのフィールドに入力します。

    • [Save(保存)]をクリックします。

  10. (SLOでは任意):次のステップは任意で、SPが起点となるシングルログアウトを有効にする場合にのみ実行します。

    • [Advanced Sign-on Settings(高度なサインオン設定)]セクションまでスクロールダウンし、ステップ7でコピーした[Logout URL(ログアウトURL)]の値をそれぞれのフィールドに入力します。

    • [Enable Single Logout(シングルログアウトを有効にする)]をクリックします。

    • ステップ7でSalesforceからダウンロードしたメタデータファイルを開きます。次に示す ds:X509Certificateの値をコピーして、テキストエディターに貼り付けます。

      Oktaサインオンページでシングルログアウトを有効にします

    • ファイルの最初と最後に、それぞれ次の行を追加します。

      -----BEGIN CERTIFICATE----- -----END CERTIFICATE-----

      作成したファイルはこれと同じようになります。

      -----BEGIN CERTIFICATE----- Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -----END CERTIFICATE----- 
    • 作成したファイルをslo.certと名前を付けて保存した後、[Signature Certificate(署名証明書)]フィールドにアップロードします。

    • [Save(保存)]をクリックします。

    • slo.certを保存して、アップロードします
    • このメタデータURLを開きます。

      Okta管理者ダッシュボードにサインインして、この値を生成します。

    • [Identity Provider Single Logout URL(IDプロバイダー シングル ログアウトURL)]を次のようにコピーします。

      [Identity Provider Single Logout URL(IDプロバイダー シングル ログアウトURL)]をコピーします
    • Salesforceに戻り、ステップ6で設定したSAMLエントリーを編集します。

    • [Single Logout Enabled(シングルログアウトを有効にする)]のチェックボックスにチェックを入れ、[Identity Provider Single Logout URL(IDプロバイダー シングル ログアウトURL)]をそれぞれのフィールドに貼り付けます。

    • [Save(保存)]をクリックします。

    • Salesforceに、シングルログアウトURLを貼り付けます
  11. 完了!


SalesforceとOkta間でSPが起点となるSAMLを構成する方法

上記のステップを完了することで、ユーザーはOktaユーザーダッシュボード上でワンクリックでSalesForceにアクセスできるようになります。このようなOktaからSalesforceや他のクラウドアプリにログインするプロセスは、IDPが起点となるSAMLとして知られています。ただし、ユーザーがSalesforceに直接アクセスしたり、ディープリンクをクリックしてOktaではなくSalesForceに最初にダイレクトされた場合、SPが起点となるSAMLが構成されていなければ、同じシングルサインオン体験は得られません。これは任意の構成です。次のステップで SPが起点となるSAMLを設定します。

SalesforceでMy Domain(私のドメイン)を設定する

SPが起点となるSAMLを使用するには、SalesForceインスタンスに貴社専用のカスタマイズされたドメイン名を設定する必要があります。Salesforceで、これらは[My Domains(私のドメイン)]と呼ばれます。[My Domains(私のドメイン)]の追加方法:

  1. Salesforceで、[Setup(設定)]をクリックします。

  2. [Domain Management(ドメイン管理)]をクリックして、サブメニューを開きます。

  3. [My Domain(私のドメイン)]をクリックします。

    salesforce_new2.png

  4. 組織に名前を付け、使用が可能かを確認した後、Register Domain(ドメインを登録)を選択します。

  5. この時点で、SalesForceでの新しい組織名(https://[orgname].my.salesforce.com)がインターネット上に公開され、12~24時間以内に広く使用できるようになります。これはブラウザーウィンドウで新しい組織名に移動してテストすることができます。

シングルサインオン設定を再構成する

新しい[My Domain(私のドメイン)]が設定されている間に、SalesForceとOktaのシングルサインオンの設定で構成の変更を加え、ここで説明するように、デフォルトの値の代わりに、新しい[My Domain(私のドメイン)]を使用することができます。

  1. Salesforceで、[Security Controls & Single Sign-On Settings(セキュリティーコントロールとシングルサインオンの設定)]に戻ります。

  2. ページのリストから以前にセットアップした構成を探し、[Edit(編集)]をクリックします。

    salesforce_new3.png

  3. ここから[Entity ID(エンティティーID)]フィールドを変更します。

    • 変更前:https://saml.salesforce.com

    • 変更後:https://[customDomain].my.salesforce.com - 先ほど作成したドメインURLを使用。

  4. OktaでSalesforce.com SAMLアプリの[General(全般)]タブを選択し、[Edit(編集)]をクリックします。

    • [Custom Domain(カスタムドメイン)]フィールドが、作成したカスタムドメインの名前と一致していることを確認します。

      例:ドメインがacme.my.salesforce.comの場合、acmeと入力します。

    • [Save(保存)]をクリックします:

    Oktaでカスタムドメインを入力します

  5. 引き続きOktaでSalesforce.com SAMLアプリの[Sign On(サインオン)]タブを選択し、[Edit(編集)]をクリックします。

    • [Login URL(ログインURL)] が、[Single Sign-On Settings(シングルサインオン設定)]ページのSalesForceで提供された[Login URL(ログインURL)]と一致することを確認します。

    • [Save(保存)]をクリックします。

    Oktaで[Login URL(ログインURL)]を入力します

Oktaをデフォルトの認証サービスとして選択する

[My Domain(私のドメイン)]が稼働し始めると、ユーザーが特定のドメインにナビゲートするたびに、Oktaをデフォルトの優先認証サービスとして指定することができるようになります。

  1. Salesforceで、 [Domain Management(ドメイン管理)] > [My Domains(私のドメイン)]に戻ります。

  2. [Authentication Configuration(認証構成)]で[Edit(編集)]をクリックします。

  3. [Authentication Service(認証サービス)]ドロップダウンメニューで、シングルサインオン設定で設定したOktaインスタンスの横にあるボックスをチェックします。

  4. [Save(保存)]をクリックします。

SPが起点となるSAMLを確認する

構成が完了したため、SPが起点となるSAML が正しく構成されていることを簡単に確認することができます。SalesforceドメインのURLに移動するだけで、簡単に組織のOktaサインオンページにリダイレクトされることが確認できます。Salesforceに割り当てられたユーザーでOktaを認証すると、SalesForceへのアクセスが可能になっているはずです。


Salesforceで委任認証を構成する方法(任意)

注:委任認証はSAML 2.0 に加え、任意で使用できる統合です。

委任認証を有効にするためにSalesforceに問い合わせる

Salesforceの1-800-667-6389に電話して、組織の委任認証を有効にするように依頼します。Salesforceの顧客サービスアプリケーションでケースを開くことでも、この作業を行うことができます。

Salesforceが委任認証を有効にすると、次の手順で進めることができます。

委任ゲートウェイURLを入力する

Salesforceで[Setup(設定)] > [Security Controls(セキュリティー管理)]セクションに移動し、[Single Sign-On Settings(シングルサインオン設定)]ページにアクセスします。[Edit(編集)]ボタンをクリックして、次のスクリーンショットのようなフォームを表示させます。

  1. 次のURLをコピーして、[Delegated Gateway URL(委任ゲートウェイURL)]フィールドに貼り付けます。

    この値は、Okta管理者ダッシュボードにサインインして生成します
  2. [Save(保存)]をクリックします

sf3.png

複製されたユーザープロフィールで、委任認証シングルサインオンを試行する

1人のユーザーでこの機能を試すことができるように、テストユーザーのプロフィールを作成することをお勧めします。この機能に慣れている場合、スキップし、次のセクションに進むことができます。

複製されたユーザープロフィールの委任認証シングルサインオンを有効にする

重要:ユーザープロフィールのシングルサインオンを有効にすると、そのユーザープロフィールを割り当てられているすべてのユーザーに影響します。最初に1人のユーザーで試したい場合は、複製されたプロフィール(上記参照)を作成してテストすることをお勧めします。

Salesforceユーザーの委任認証シングルサインオンを有効にする

重要:OktaがSalesforceユーザー管理APIへの接続に使用するSalesforceユーザーの委任認証は有効にしないでください。APIユーザーはOktaのSalesforceユーザー管理タブで指定されています。

シングルサインオンが可能なSalesforceユーザーをOktaユーザーに割り当てる


テストする!

無事にログインできた場合、これらの認証情報はMicrosoft Outlookプラグインやその他のAPIのようなSalesforceクライアントアプリケーションの統合に使用できます。


完了!

ユーザーがSalesforceにシングル サインオンする準備ができました。


備考

[User Profile & Type(ユーザープロフィールとタイプ)]で[Salesforce Portal User(Salesforceポータルユーザー)]を選択した場合、以下のSAML属性がサポートされます。


SPが起点となるSSO

SalesforceドメインURLに移動します。IDプロバイダーを使用してログインするためのオプションが表示されているはずです。

sf_new2.png