このドキュメントには、Salesforce用SAML 2.0を構成するための手順(以下のSAMLの構成を参照)に加え、SalesforceとOkta間でSPが起点となるSAMLを構成する方法やSalesforceで委任認証を構成する方法(任意)など、必要になる可能性のある役立つ追加情報が含まれています。
Okta/SalesforceのSAML統合では現在、次の機能をサポートしています。
記載されている機能の詳細についてはOkta Glossary(Okta用語集)をご覧ください。
こちらをクリックして、Oktaのユーザー管理設定に使用したものと同じ管理者ユーザー名とパスワードトークンでSalesforceにログインします。
次のいずれかを行います。
Salesforce Classic: [Setup(設定)] > [Security Controls(セキュリティー管理)] > [Single Sign-On Settings(シングルサインオン設定)]にアクセスします。
Salesforce Lightening Experience:歯車アイコンをクリックし、[Setup(設定)] > [Identity(アイデンティティ)] > [Single Sign-On Settings(シングルサインオン設定)]にアクセスします。
[Single Sign-On Settings(シングルサインオン設定)]ページで[Edit(編集)]をクリックします。
[SAML Enabled(SAML有効)]ボックスにチェックを入れてSAML Single-Sign On(SAMLシングルサインオン)を有効にし、[Save(保存)]をクリックします。
[New(新規)]をクリックします。
次を入力します。
特に指示のない限り、デフォルト値のままにしておきます。
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(保存)]をクリックします。
次を行います。
[Login URL(ログインURL)]の値を保存します
(SLOでは任意):[ログアウトURL]の値を保存します
(SLOでは任意):[Download Metadata(メタデータをダウンロード)]をクリックします
OktaでSalesforceアプリの[General(全般)]タブを選択し、[Edit(編集)]をクリックします。
カスタムドメインを使用している場合、[Custom Domain(カスタムドメイン)]フィールドにその値を入力しますが、そうでない場合は空白のままにします。
[Save(保存)]をクリックします。
引き続きOktaでSalesforceアプリの[Sign On(サインオン)]タブを選択し、[Edit(編集)]をクリックします。
[Advanced Sign-on Settings(高度なサインオン設定)]セクションまでスクロールダウンし、上記のステップ7でコピーした[Login URL(ログインURL)]の値をそれぞれのフィールドに入力します。
[Save(保存)]をクリックします。
(SLOでは任意):次のステップは任意で、SPが起点となるシングルログアウトを有効にする場合にのみ実行します。
[Advanced Sign-on Settings(高度なサインオン設定)]セクションまでスクロールダウンし、ステップ7でコピーした[Logout URL(ログアウトURL)]の値をそれぞれのフィールドに入力します。
[Enable Single Logout(シングルログアウトを有効にする)]をクリックします。
ステップ7でSalesforceからダウンロードしたメタデータファイルを開きます。次に示す ds:X509Certificateの値をコピーして、テキストエディターに貼り付けます。
ファイルの最初と最後に、それぞれ次の行を追加します。
-----BEGIN CERTIFICATE----- -----END CERTIFICATE-----
作成したファイルはこれと同じようになります。
-----BEGIN CERTIFICATE----- Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -----END CERTIFICATE-----
作成したファイルをslo.certと名前を付けて保存した後、[Signature Certificate(署名証明書)]フィールドにアップロードします。
[Save(保存)]をクリックします。
このメタデータURLを開きます。
Okta管理者ダッシュボードにサインインして、この値を生成します。
[Identity Provider Single Logout URL(IDプロバイダー シングル ログアウトURL)]を次のようにコピーします。
Salesforceに戻り、ステップ6で設定したSAMLエントリーを編集します。
[Single Logout Enabled(シングルログアウトを有効にする)]のチェックボックスにチェックを入れ、[Identity Provider Single Logout URL(IDプロバイダー シングル ログアウトURL)]をそれぞれのフィールドに貼り付けます。
[Save(保存)]をクリックします。
上記のステップを完了することで、ユーザーはOktaユーザーダッシュボード上でワンクリックでSalesForceにアクセスできるようになります。このようなOktaからSalesforceや他のクラウドアプリにログインするプロセスは、IDPが起点となるSAMLとして知られています。ただし、ユーザーがSalesforceに直接アクセスしたり、ディープリンクをクリックしてOktaではなくSalesForceに最初にダイレクトされた場合、SPが起点となるSAMLが構成されていなければ、同じシングルサインオン体験は得られません。これは任意の構成です。次のステップで SPが起点となるSAMLを設定します。
SPが起点となるSAMLを使用するには、SalesForceインスタンスに貴社専用のカスタマイズされたドメイン名を設定する必要があります。Salesforceで、これらは[My Domains(私のドメイン)]と呼ばれます。[My Domains(私のドメイン)]の追加方法:
Salesforceで、[Setup(設定)]をクリックします。
[Domain Management(ドメイン管理)]をクリックして、サブメニューを開きます。
[My Domain(私のドメイン)]をクリックします。
組織に名前を付け、使用が可能かを確認した後、Register Domain(ドメインを登録)を選択します。
この時点で、SalesForceでの新しい組織名(https://[orgname].my.salesforce.com)がインターネット上に公開され、12~24時間以内に広く使用できるようになります。これはブラウザーウィンドウで新しい組織名に移動してテストすることができます。
新しい[My Domain(私のドメイン)]が設定されている間に、SalesForceとOktaのシングルサインオンの設定で構成の変更を加え、ここで説明するように、デフォルトの値の代わりに、新しい[My Domain(私のドメイン)]を使用することができます。
Salesforceで、[Security Controls & Single Sign-On Settings(セキュリティーコントロールとシングルサインオンの設定)]に戻ります。
ページのリストから以前にセットアップした構成を探し、[Edit(編集)]をクリックします。
ここから[Entity ID(エンティティーID)]フィールドを変更します。
変更前:https://saml.salesforce.com。
変更後:https://[customDomain].my.salesforce.com - 先ほど作成したドメインURLを使用。
OktaでSalesforce.com SAMLアプリの[General(全般)]タブを選択し、[Edit(編集)]をクリックします。
[Custom Domain(カスタムドメイン)]フィールドが、作成したカスタムドメインの名前と一致していることを確認します。
例:ドメインがacme.my.salesforce.comの場合、acmeと入力します。
[Save(保存)]をクリックします:
引き続きOktaでSalesforce.com SAMLアプリの[Sign On(サインオン)]タブを選択し、[Edit(編集)]をクリックします。
[Login URL(ログインURL)] が、[Single Sign-On Settings(シングルサインオン設定)]ページのSalesForceで提供された[Login URL(ログインURL)]と一致することを確認します。
[Save(保存)]をクリックします。
[My Domain(私のドメイン)]が稼働し始めると、ユーザーが特定のドメインにナビゲートするたびに、Oktaをデフォルトの優先認証サービスとして指定することができるようになります。
Salesforceで、 [Domain Management(ドメイン管理)] > [My Domains(私のドメイン)]に戻ります。
[Authentication Configuration(認証構成)]で[Edit(編集)]をクリックします。
[Authentication Service(認証サービス)]ドロップダウンメニューで、シングルサインオン設定で設定したOktaインスタンスの横にあるボックスをチェックします。
[Save(保存)]をクリックします。
構成が完了したため、SPが起点となるSAML が正しく構成されていることを簡単に確認することができます。SalesforceドメインのURLに移動するだけで、簡単に組織のOktaサインオンページにリダイレクトされることが確認できます。Salesforceに割り当てられたユーザーでOktaを認証すると、SalesForceへのアクセスが可能になっているはずです。
注:委任認証はSAML 2.0 に加え、任意で使用できる統合です。
委任認証はMicrosoft Outlookプラグインなど、Salesforceとのさまざまな統合を可能にするだけでなく、ユーザーをSalesforceからロックアウトする機能も提供します。SAML 2.0シングルサインオンとは異なり、委譲認証はユーザープロフィールレベルでオンになります。[Is Single Sign-On Enabled(シングルサインオンを有効)]にする権限が有効になっているユーザープロフィールを誰が持っているかによって、1人のユーザーまたは大規模なグループに対して委任認証を有効にすることができます。
この機能はSalesforceのバージョンのどこにありますか?
このフォームはSalesforceがご利用の組織の委任認証を有効にするまで表示できません。有効になると、委任認証フォームはSalesforceの[Single Sign-On Settings(シングルサインオン設定)]ページ(SAML 2.0を構成するのと同じ場所)に表示されます。
Salesforceの1-800-667-6389に電話して、組織の委任認証を有効にするように依頼します。Salesforceの顧客サービスアプリケーションでケースを開くことでも、この作業を行うことができます。
Salesforceが委任認証を有効にすると、次の手順で進めることができます。
Salesforceで[Setup(設定)] > [Security Controls(セキュリティー管理)]セクションに移動し、[Single Sign-On Settings(シングルサインオン設定)]ページにアクセスします。[Edit(編集)]ボタンをクリックして、次のスクリーンショットのようなフォームを表示させます。
次のURLをコピーして、[Delegated Gateway URL(委任ゲートウェイURL)]フィールドに貼り付けます。
この値は、Okta管理者ダッシュボードにサインインして生成します[Save(保存)]をクリックします
1人のユーザーでこの機能を試すことができるように、テストユーザーのプロフィールを作成することをお勧めします。この機能に慣れている場合、スキップし、次のセクションに進むことができます。
Salesforceの[Setup(設定)] > [Manage Users(ユーザーを管理)]セクションに移動し、[Profiles(プロフィール)]ページにアクセスします
試してみたいユーザープロフィールを開きます
[Clone(複製)]ボタンをクリックし、このプロフィールのコピーを作成します。複製されたプロフィールを使用することで、元のプロフィールを持っている他のユーザーへの影響を避けることができます。
複製されたプロフィールに名前を付けます
[Save(保存)]をクリックします
重要:ユーザープロフィールのシングルサインオンを有効にすると、そのユーザープロフィールを割り当てられているすべてのユーザーに影響します。最初に1人のユーザーで試したい場合は、複製されたプロフィール(上記参照)を作成してテストすることをお勧めします。
Salesforceの[Setup(設定) ] > [Manage Users(ユーザーを管理)]セクションに移動して、[Profiles(プロフィール)]ページにアクセスします
ユーザープロフィールの[Edit(編集)]をクリックし、[General User Permissions(一般ユーザー権限)]セクションまでスクロールダウンします
[Is Single Sign-On Enabled(シングルサインオンが有効)]チェックボックスにチェックを入れます
[Save(保存)]をクリックします
重要:OktaがSalesforceユーザー管理APIへの接続に使用するSalesforceユーザーの委任認証は有効にしないでください。APIユーザーはOktaのSalesforceユーザー管理タブで指定されています。
Salesforceの[Setup(設定)] > [Manage Users(ユーザーを管理)]セクションに移動して、[Users(ユーザー)]ページにアクセスします
シングルサインオンを有効にしたいユーザーの[Edit(編集)]をクリックします
委任認証によるシングルサインオンが有効になっている[Profile(プロフィール)]を選択します(実験中の場合、複製したプロフィールを使用します)
[Save(保存)]をクリックします
Oktaで、人リストに移動し、人の名前をクリックしてプロフィールを表示します
[Assign Application(アプリケーションを割り当て)]をクリックします
リストからSalesforceを選択し、委任認証を有効にしたSalesforceのユーザー名を入力します
[Save(保存)]をクリックします
こちらをクリックして、Salesforceログインページにアクセスします
前のセクションで使用したSalesforceユーザー名を入力します
上記のSalesforceユーザー名を割り当てられたOktaユーザーのOktaパスワードを入力します
[Login(ログイン)]をクリックします
無事にログインできた場合、これらの認証情報はMicrosoft Outlookプラグインやその他のAPIのようなSalesforceクライアントアプリケーションの統合に使用できます。
ユーザーがSalesforceにシングル サインオンする準備ができました。
[User Profile & Type(ユーザープロフィールとタイプ)]で[Salesforce Portal User(Salesforceポータルユーザー)]を選択した場合、以下のSAML属性がサポートされます。
名称 | 値 |
---|---|
portal_id | [Portal ID(ポータルID)]フィールドから取得します([General(全般)]タブにあります) |
organization_id | [Organization ID(組織ID)]フィールドから取得します([General(全般)]タブにあります) |
siteURL | [SiteURL(サイトURL)]フィールドから取得します([General(全般)]タブにあります) |
SalesforceドメインURLに移動します。IDプロバイダーを使用してログインするためのオプションが表示されているはずです。