Salesforce スポークの設定

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:14分
  • SalesforceアカウントとServiceNowインスタンスをデータ連携します。Salesforce でカスタム OAuth アプリケーションを作成し、ServiceNow からの要求を認証します。

    始める前に

    • 統合ハブサブスクリプションを要求
    • Salesforce スポーク の有効化
    • 必要なロール:admin
    注:
    ここでは、2 つのスポークセットアップ手順の概要を説明します。要件に従って、いずれかの手順を実行します。
    注:
    デフォルトの接続エイリアスレコードは削除しないでください。想定外の動作をすることがあります。デフォルトの接続エイリアスを使用して接続を設定します。

    Salesforceに接続済みアプリを作成

    Salesforceアカウントで接続済みアプリを作成し、Salesforce スポークで OAuth 2.0 認証を有効にします。

    始める前に

    • Salesforce アカウント
    • 必要なロール:adminSalesforce

    このタスクについて

    Salesforce アカウントから、次の手順を完了します。での 接続アプリケーションの作成 を参照してください Salesforce Trailblazer フォーラム 接続済みアプリを作成および設定する手順に関するドキュメント。

    手順

    1. Salesforceアカウントから、接続済みアプリを作成します。
    2. Salesforceアプリケーションが ServiceNowインスタンスとデータを共有できるように、接続済みアプリを構成します。
      1. [OAuth 設定を有効にする] を選択し、認証設定を構成します。
      2. JWT 署名キーを使用してスポークを設定する場合は、[デジタル署名を使用 (Use Digital Signatures)] を選択し、Java KeyStore (JKS) 証明書をアップロードします。
      3. OAuth スコープを選択します。
        • データ (api) へのアクセスと管理
        • いつでも代理で要求を実行 (refresh_token, offline_access)
      4. コールバック URL にServiceNowインスタンス URL を次のフォーマットで指定します:https://<instance-name>.service-now.com/oauth_redirect.do
      5. 接続済みアプリを作成した後、ポリシーを編集ページの [OAuth ポリシー] で、次の値を設定します。
        フィールド
        許可されたユーザー アドミニストレーターが承認したユーザーは事前に承認されています
        IP 制限 IP 制限を緩和
      6. 要件に従って、接続済みアプリのユーザープロビジョニングを構成します。
    3. [コンシューマーキー][コンシューマーシークレット] の値を記録します。
      注:
      • 要件に従ってプロファイルと権限セットを割り当てます。
      • [OAuth アプリの IP 制限 (OAuth app IP restrictions)] で、接続されたアプリがデフォルトアプリのように動作するように OAuth ポリシーを指定します。

    タスクの結果

    接続済みアプリはSalesforceに作成されます。

    オプション 1:OAuth 認証テンプレートを使用して Salesforce スポーク を設定

    Salesforce アカウントと ServiceNow インスタンスをデータ連携します。Salesforce でカスタム OAuth アプリケーションを作成し、[OAuth 認証] テンプレートを使用して ServiceNow からの要求を認証します。

    始める前に

    手順

    1. 移動先 接続と資格情報 > 接続および資格情報エイリアス.
    2. [Salesforce] レコードを開きます。
    3. [新しい接続および資格情報の作成] 関連リンクをクリックします。
    4. フォームに、これらの値を入力します。
      表 : 1. 接続と資格情報フォームを作成
      フィールド 説明
      接続名 接続レコードを識別する名前。
      接続 URL (インスタンス URL) この形式で Salesforce インスタンスに接続するためのベース URL:https://<instance-name>.salesforce.com
      OAuth クライアント ID Salesforce 接続済みアプリの構成中に生成されたコンシューマーキー。
      OAuth クライアントシークレット Salesforce 接続済みアプリの構成中に生成されたコンシューマーシークレット。
      OAuth リダイレクト URL 認証後にユーザーがリダイレクトされる OAuth プロバイダーの URL。このフィールドは、自動的に入力されます。
    5. [OAuth トークンを作成して取得] をクリックします。
      [OAuth2 認証] ダイアログボックスが表示されます。
    6. Salesforce アプリケーションの作成に使用した Salesforce admin アカウントにログインします。
      ServiceNow インスタンスは Salesforce の OAuth トークンを作成し、自動的に [統合プロファイル] フォームに戻ります。
    7. [公開] をクリックします。

    オプション 2:JWT 署名キーを使用して Salesforce スポーク を設定

    Salesforce アカウントと ServiceNow インスタンスをデータ連携します。Salesforce でカスタム OAuth アプリケーションを作成し、JWT 署名キーを使用して ServiceNow からの要求を認証します。

    始める前に

    Java キーストア証明書を Salesforce スポーク に添付する

    有効な Java KeyStore (JKS) 証明書をSalesforce スポークに添付して、JSON Web トークン (JWT) ベアラー権限トークン認証を有効にします。

    始める前に

    • 有効な Java KeyStore 証明書
    • 必要なロール:admin

    手順

    1. 移動先 すべて > システム定義 > 証明書.
    2. [新規] をクリックします。
    3. フォームのフィールドに入力します。
      表 : 2. [X.509 証明書] フォーム
      フィールド 説明
      名前 レコードを一意に識別する名前を入力します。たとえば、Salesforce 証明書です。
      有効期限通知 証明書の有効期限が近づいたときに通知を送信するオプション。
      期限切れ時に通知 証明書の有効期限が切れたときに通知を受信するユーザー
      有効期限切れ前に警告 証明書の有効期限が切れる前に通知を送信する日数。
      有効 証明書を積極的に使用するオプション。
      フォーマット 証明書のフォーマット。インスタンスは、PEM および DER フォーマットをサポートしています。
      タイプ 証明書のタイプ。[Java Key Store (Java キーストア)]を選択します。
      有効開始日 証明書が有効になる日付。
      有効期限 証明書の有効期限が切れる日付。
      数日中に期限切れ (Expires in days) 証明書の有効期限が切れるまでの日数。
      キーストアパスワード 証明書に関連付けられたパスワード。
      簡単な説明 証明書のサマリー。
      PEM 証明書 X509 証明書のコンテンツ。
    4. 添付ファイルアイコン (添付ファイルアイコン) をクリックし、JKS 証明書を添付します。
    5. [ストア/証明書を検証] をクリックします。

    タスクの結果

    JKS 証明書が作成され、Salesforce スポークに添付されます。

    Salesforce スポークの JWT 署名キーの作成

    Java KeyStore 証明書にアサインする JSON Web トークン (JWT) 署名キーを作成します。

    始める前に

    必要なロール:admin

    手順

    1. 移動先 すべて > システム OAuth > JWT キー.
    2. [新規] をクリックします。
    3. フォームのフィールドに入力します。
      表 : 3. JWT キーフォーム
      フィールド 説明
      名前 JWT 署名キーを一意に識別する名前です。たとえば、Salesforce JWT キーです。
      署名キーストア 前のタスクで添付された有効な JKS 証明書です。たとえば、Salesforce 証明書です。
      キー ID キー ID は、複数のキーを使ってトークンに署名する際に、どのキーを使用するかを識別します。
      アプリケーション このレコードを含むアプリケーションスコープ。[Salesforce スポーク] を選択します。
      署名アルゴリズム JWT キーで署名するアルゴリズム。
      署名キーパスワード 署名キーに関連付けられたパスワード。
      有効 証明書を積極的に使用するオプション。
    4. [送信] をクリックします。

    タスクの結果

    JWT キーが作成され、JKS 証明書にアサインされます。

    Salesforce スポークの JWT プロバイダーの作成

    JSON Web トークン (JWT) プロバイダーを ServiceNow インスタンスに追加します。

    始める前に

    必要なロール:admin

    手順

    1. 移動先 すべて > システム OAuth > JWT プロバイダー.
    2. [新規] をクリックします。
    3. フォームのフィールドに入力します。
      表 : 4. JWT プロバイダーフォーム
      フィールド 説明
      名前 JWT プロバイダーを一意に識別する名前です。たとえば、Salesforce JWT プロバイダーです。
      有効期限の間隔 (秒) JWT プロバイダートークンの有効期間を設定する秒数です。
      署名構成 前のステップの JWT 署名キーです。たとえば、Salesforce JWT キーです。
    4. フォームヘッダーを右クリックし、[保存] をクリックします。
      [標準要求] および [カスタム要求] 関連リストが表示されます。
    5. [標準要求] 関連リストで、[iss][sub]、および [aud] の各値を入力します。
      の「 サーバー間統合のための OAuth 2.0 JWT ベアラーフロー 」を参照してください。 Salesforce Trailblazer フォーラム 手順のドキュメントを参照してください。
    6. [更新] をクリックします。

    タスクの結果

    JWT プロバイダーが ServiceNow インスタンスに追加されます。

    OAuth プロバイダーとしてSalesforceを登録

    Salesforce接続済みアプリの構成中に生成された情報を使用し、Salesforceを OAuth プロバイダーとして登録して、インスタンスが OAuth 2.0 トークンを要求できるようにします。

    始める前に

    必要なロール:admin

    手順

    1. 移動先 すべて > システム OAuth > アプリケーションレジストリ.
    2. [新規] をクリックします。
      どのような OAuth アプリケーションですか?」というメッセージが表示されます。
    3. [サードパーティ OAuth プロバイダーに接続します] を選択します。
      空のアプリケーション登録フォームが表示されます。
    4. フォームのフィールドに入力します。
      フィールド 必要な値
      名前 レコードを一意に識別する名前を入力します。たとえば、Salesforce OAuth を入力します。
      クライアント ID Salesforce接続済みアプリの構成中に生成されたコンシューマーキー
      クライアント シークレット Salesforce接続済みアプリの構成中に生成されたコンシューシークレット
      OAuth API スクリプト 要求と応答をカスタマイズするオプションのスクリプトです。
      デフォルトの権限許可タイプ トークンを確立するために使用される権限許可のタイプ。[JWT ベアラー] を選択します。
      リフレッシュ トークンの有効期間 リフレッシュトークンが有効になる時間 (秒) デフォルトの時間は 8,640,000 秒です。
      PKCE が必要 (PKCE required) パブリッククライアントが認証に PKCE を要求できるようにするオプション。
      注:
      PKCE が有効になっている場合、[デフォルトの権限許可タイプ] として使用できるのは [認証コード] のみです。
      アプリケーション このレコードを含むアプリケーションスコープ。[Salesforce] を選択します。
      アクセス可能 このレジストリにアクセスできるアプリケーションスコープです。
      有効 アプリケーションレジストリを積極的に使用するためのオプション。
      認証 URL このフィールドは空白のままにする必要があります。
      トークン URL OAuth サーバートークンのエンドポイントです。
      • 本番インスタンスには、https://login.salesforce.com/services/oauth2/token を入力します。
      • サンドボックスインスタンスには、https://test.salesforce.com/services/oauth2/token を入力します。
      トークン失効 URL このフィールドは空白のままにする必要があります。
      リダイレクト URL このフィールドは空白のままにする必要があります。
    5. フォームヘッダーを右クリックし、[保存] をクリックします。
      • OAuth 認証情報が検証され、[リダイレクト URL] フィールドに情報が入力されます。
      • 権限許可タイプJWT ベアラーとして [OAuth エンティティプロファイル] に情報が入力されます。たとえば、OAuth エンティティプロファイルは、デフォルトの名前Salesforce JWT provider default_profile 」で作成されます。
    6. [リダイレクト URL] フィールドから値をコピーします。
    7. [Update] をクリックします。
    8. Salesforce アカウントにログ インして、接続済みアプリの構成を編集します。
      次を参照してください。 Salesforce Trailblazer フォーラム 手順のドキュメントを参照してください。
    9. [リダイレクト URL] の値を Salesforce 接続済みアプリのコールバック URL に貼り付けます。
      たとえば、https://<インスタンス名>.service-now.com/oauth_redirect.do を貼り付けます。

    タスクの結果

    インスタンスは、 Salesforce スポークの OAuth 2.0 トークンを要求できます。
    注:
    OAuth トークンの有効期限が切れると、ほとんどの場合、スポークは新しいトークンを自動的に再生成します。トークンの有効期限が切れて再生成されない場合、アドミンロールを持つユーザーはスポーク OAuth トークンを再生成できます。

    Salesforce スポークの認証情報レコードを作成

    作成したSalesforce接続済みアプリの認証情報レコード を作成します。Salesforce スポーク接続および資格情報エイリアスでは、これらの認証情報を使用してアクションを許可します。

    始める前に

    必要なロール:admin

    手順

    1. 移動先 すべて > 接続 & 認証情報 > 認証情報.
    2. [新規] をクリックします。
      作成する認証情報のタイプは? 」というメッセージが表示されます。
    3. [OAuth 2.0 認証情報] を選択します。
      ポップアップウィンドウに、空の OAuth 2.0 認証情報フォームが表示されます。
    4. フォームのフィールドに入力します。
      フィールド 必要な値
      名前 レコードを一意に識別する名前を入力します。たとえば、Salesforce 認証情報を入力します。
      有効 認証情報レコードを積極的に使用するオプションです。
      OAuth エンティティ プロファイル Salesforce接続されたアプリを OAuth プロバイダーとして登録したときに作成した OAuth プロファイルです。たとえば、[Salesforce OAuth default_profile] を選択します。
      適用先 この認証情報を使用できる MID サーバーです。たとえば、[すべての MID サーバー] を選択します。
      順番 この認証情報を適用する順番。たとえば、「100」と入力します。
    5. レコードを保存します。
    6. OAuth トークンを生成するには、[OAuth トークンを取得] 関連リンクをクリックします。

    タスクの結果

    Salesforce スポークの認証情報レコードが作成されます。

    Salesforce スポークの接続レコードを作成

    Salesforceアカウントへの接続レコードを作成します。Salesforce スポーク接続および資格情報エイリアスでは、これらの接続を使用してSalesforceでアクションを実行します。

    始める前に

    必要なロール:admin

    手順

    1. 移動先 すべて > 接続 & 認証情報 > 接続および資格情報エイリアス.
    2. [Salesforce] のレコードを開きます。
    3. [接続] タブで、[新規] をクリックします。
      空の HTTP(s) 接続フォームが表示されます。
    4. 値を入力します。
      フィールド 必要な値
      名前 接続レコードを一意に識別する名前です。たとえば、Salesforce 接続を入力します。
      認証情報 Salesforce用に作成した認証情報レコードです。たとえば、[Salesforce 認証情報] を選択します。
      接続エイリアス 接続に関連付けられているエイリアスレコードです。
      URL ビルダー
      注:
      チェックボックスをオンにしないでください。
      接続 URL Salesforceインスタンスに接続するためのベース URL です。例: https://<instance-name>.salesforce.com
      MID サーバーを使用 MID サーバーを使用するためのオプションです。このチェックボックスを選択する場合、[MID サーバー詳細設定] 関連リストでフィールドを定義します。
      有効 接続を積極的に使用にするオプションです。
      ドメイン アクションまたはアクティビティを実行するドメイン。
    5. フォームヘッダーを右クリックし、 [保存] をクリックします。
    6. [属性] 関連リストで api_versionv45.0 に設定されていることを確認します。

    タスクの結果

    Salesforce スポーク が設定されて、ServiceNow インスタンスとデータ連携されます。