OAuthによる接続とは
グローバルリソースの設定において、[接続方式]に[接続アプリケーション / ID・パスワード]を指定した場合の説明です。
概要
アダプタは、デフォルトの設定ではユーザIDとパスワードによる接続を行いますが、グローバルリソースの[OAuthを使用して接続する]にチェックを入れるとOAuth2.0での接続に切り替えることができます。
OAuthによる接続では、Salesforceに用意されている認証フローである「OAuth 2.0 更新トークンフロー」を使用します。
OAuth 2.0 更新トークンフロー
OAuthでは、ユーザがアプリケーションに対してアクセスを認証することで発行されるアクセストークンを使用して接続を行います。このアクセストークンはセッションIDとして扱われます。
しかし、アクセストークンは発行されてからセッションの有効期間を経過すると無効となります。
アダプタでは、新しいアクセストークンの取得のために更新トークン(以降、Refresh Tokenと表記)を使用します。
Refresh Tokenは、アプリケーションがユーザを介さず自身のタイミングで新しいアクセストークンを取得するためのトークンです。
アプリケーションへの永続的なアクセス許可を表し、[設定]>[私の個人設定]>[リモートアクセス]でユーザが明示的に無効化するまで有効です。
OAuthでの接続方法
Refresh Tokenを取得する
グローバルリソースの[OAuthを使用して接続する]にチェックを入れ、[OAuth接続先]にて接続先を選択します。
[Refresh Tokenを取得するには?]に記載されているURLへブラウザで接続します。
Salesforceのログイン画面が表示されるので、アクセスを許可するユーザでログインを行います。
アダプタへの接続を許可する画面が表示されない場合、以下の権限が付与されているか確認してください。
- 「インストールされていない接続アプリケーションを承認」
ユーザおよび権限の内容を確認し、アダプタへの接続を許可してください。
許可を行うと、次のメッセージが表示されるページに遷移します。
このページのURLのフラグメントに、発行されたRefresh Tokenが表示されます。
ブラウザのアドレスバーから直接コピーしてください。
例) https://login.salesforce.com/services/oauth2/success#access_token=xxxxxx&refresh_token=xxxxxx&instance_url=httpsxxxx&id=httpsxxxx&issued_at=1234567890123&signature=xxxxx&scope=api+refresh_token
Salesforceへ接続アプリケーションをインストールする
OAuthによる接続を行うためには、接続アプリケーションをインストールする必要があります。
接続アプリケーションをインストールするには、以下の権限が必要です。
- [接続アプリケーションの OAuth の利用状況]画面の表示に必要な権限
- 接続アプリケーションのインストールに必要な権限
- 「アプリケーションのカスタマイズ」
- 「すべてのデータの編集」または「接続アプリケーションの管理」
接続アプリケーションをインストールするには、使用しているSalesforce組織の以下の画面を表示します。
[設定]>[アプリケーション]>[接続アプリケーション]>[接続アプリケーションの OAuth の利用状況]
接続アプリケーションに「Salesforce Adapter OAuth」が表示されていることを確認し、[アクション]列に表示されている[インストール]ボタンをクリックします。
クリック後は、画面に従いインストールを完了してください。
詳細については、「接続アプリケーションのインストール」(https://help.salesforce.com/s/articleView?id=xcloud.connected_app_how_to_install.htm&type=5&language=ja) を参照してください。
許可されるアダプタの権限
アダプタに許可されるOAuthアクセスの権限は以下です。
- データへのアクセスと管理(api)
- ユーザに代わっていつでも要求を実行(refresh_token)