2021/04/13

Salesforceの接続アプリケーションの機能の概要と作成の手順をご紹介

 
  

Salesforceの接続アプリケーションとは

Salesforceの接続アプリケーションは、外部アプリケーションをSalesforceへ統合するためのフレームワークです。APIや、OAuth、SAML、OpenID Connectなどの標準プロトコルを用いて、外部アプリケーションの承認、認証、シングルサインオンのサービスを提供します。 接続アプリケーションによって統合された外部アプリケーションは、SaaSサブスクリプション上や、カスタマーサクセスプラットフォームデバイスで実行できます。

Salesforceの接続アプリケーションでできること

接続アプリケーションを活用すると、このようなことができるようになります。代表的な使用例を紹介します。 ・API統合によるデータへのアクセスで、Salesforce組織のデータを参照する。 ・外部アプリケーションのメタデータを取得し、使用プロトコル、実行されている場所を参照する。 ・外部アプリケーションのデータへのアクセスを制御する。 ・接続アプリケーションの利用状況を監査する。

APIを統合してデータにアクセスする

Salesforce API に統合する接続アプリケーションを、外部アプリケーションに代わって、Salesforceのデータにアクセスさせることができます。 OAuth2.0プロトコルによるOAuth承認フローを使用して、Salesforce APIを統合し、アクセスの許可及び制限を実行できるようになります。これによって、ユーザーはあるアプリケーションで作業中に、別のアプリケーションのデータを表示できます。 Salesforce Mobile SDKを使用すれば、モバイルアプリケーションの接続アプリケーションにもOAuth 2.0を実装できます。

Salesforce組織とサービスプロバイダーを統合する

接続アプリケーションを使用して、Salesforce組織とサービスプロバイダーを統合するには、Salesforceが、IDプロバイダーとして機能していることが前提です。

SAML 2.0で接続する場合

Salesforceが、サービスプロバイダーもしくはIDプロバイダーのSAMLシングルサインオン(SSO)をサポートします。 Salesforceのログイン情報を使用してログインできるようにするため、ユーザー認証にSAML 2.0を実装したカスタムアプリケーションに、SSOフローを設定します。 SSOフローでは、このカスタムアプリケーションを接続アプリケーションとして設定します。SAMLプロトコルを実装されているため、Salesforce組織はIDプロバイダーとして設定されます。

OpenID Connectで接続する場合

Salesforce組織から、外部アプリケーションにシングルサインオンするための接続アプリケーションを作成します。サービスプロバイダー側で、OpenIDConnectトークンを受け入れることが前提です。 OAuth設定を有効にしてIDトークンを構成することで、サービスプロバイダーをSalesforce組織と統合し、SSOフローが有効になります。

サードパーティアプリケーションのアクセスを制御する

Salesforceを拡張するサードパーティアプリケーションなどを使用する際、システム管理者が設定したセキュリティポリシーで、アクセス制御できます。 サードパーティアプリケーションがアクセスできるデータ、サードパーティアプリケーションを使用できるユーザーを定義し、アクセスを許可もしくは制限します。 また、Salesforce組織からサードパーティアプリケーションをアンインストールして、アクセスをブロックすることもできます。

外部APIゲートウェイの承認を実行する

Salesforceを独立したAPIゲートウェイのOAuth承認サーバとして機能させることができます。これによって、外部APIゲートウェイでホストされているリソースが保護されます。 接続アプリケーションからSalesforceに、APIゲートウェイによって保護されたデータへのアクセスをリクエストし、Salesforceがアクセスを許可します。接続アプリケーションは、OpenID Connectの動的クライアント登録を使用して、自動的に作成できます。

接続アプリケーション作成からAPIのOAuht有効化、コンシューマ鍵の確認まで

接続アプリケーションの作成とAPI統合のOAuth設定の有効化に関する手順を説明します。接続アプリケーションが、外部アプリケーションに代わってSalesforceに接続できるようになります。

接続アプリケーションを作成する

①新規接続アプリケーションの画面を開く

Salesforceにログインして[アプリケーションマネージャ]を開き、[新規接続アプリケーション]をクリックして、Lightning Experienceアプリケーションマネージャを開きます。 [設定]からクイック検索→[アプリケーション]→[アプリケーションマネージャ]→[新規接続アプリケーション]

②新規接続アプリケーションの[基本情報]を入力する

新規接続アプリケーションの[基本情報]の必要な項目を入力します。 ここで、ロゴ、アイコンのURLを設定すると、アプリランチャータイル、ログイン承認時に表示ページに任意の画像を設定できます。指定しない場合は、Salesforceがアプリのイニシャルからロゴを自動生成します。 <必須項目> ・接続アプリケーション名 アプリマネージャとそのアプリランチャータイルに表示されます。任意の名称をつけられますが、組織内ではユニークであることが必要です。 ・API参照名 アプリを参照するときに使用するAPIの名称です。デフォルトのバージョン名をそのまま使用するか、任意の名称を入力します。 ・取引先責任者メール 接続アプリケーションを管理する担当者のメールアドレスを入力します。電話番号の入力は任意です。

③[API(OAuth設定の有効化)]を設定する

続いて、API(OAuth設定の有効化)を設定します。ここでは必須項目のみ説明します。 ・[OAuth設定の有効化]に、チェックを入れます。 ・[コールバックURL]は、接続アプリケーションのOAuth承認後に呼び出されるURLです。アプリケーションの種類によって、ポート番号かURLを入力します。セキュアであることがマストですので、必ずHTTP通信(https://)のURLを指定してください。 <コールバックURLの入力内容> デスクトップアプリ:ローカルホストのポート番号(※使用されていないもの) Webアプリケーション:Salesforce がコールバック送信する先のURL ・[選択したOAuth範囲]で、接続アプリケーションの権限が定義されたOAuthスコープを選択します。[利用可能なOAuth範囲]から[選択したOAuth範囲]に追加していきます。 ・[保存]して終了します。

④コンシューマ鍵を確認する

アクセストークンの取得に必要な、コンシューマ鍵(client_id)及びコンシューマの秘密(client_secret)は[接続アプリケーションを管理する]で確認できます。 OAuth認証には、コンシューマ鍵(client_id)、コンシューマの秘密(client_secret)、環境のユーザー名(username)、パスワード(password)を使用します。これらに、必要に応じてセキュリティートークンを加えて接続し、アクセストークンを取得します。 ・[接続アプリケーションを管理する]を開き、[API(OAuth設定の有効化)]のコンシューマ鍵、コンシューマの秘密をクリックします。 [設定]から[クイック検索アプリケーション]→[アプリケーションマネージャ]→[接続アプリケーションを管理する]

接続アプリケーションでSalesforceと外部アプリを連携する

Salesforceの接続アプリケーションについて説明しました。 ここで紹介したOAuthの有効化により、アクセス制御が可能になり、データを保護されている外部アプリケーションとのセキュアな連携を実現できます。 接続アプリケーションを活用して、外部アプリケーション連携によるユーザビリティ向上をめざしましょう。]]>