Salesforce 接続アプリを、パスワード認証からクライアント認証フローへ移行する
クライアント認証情報フローは、 OAuth 2.0 の認証方式の一つであり、ユーザーのログインセッションを必要とせずにサーバー間連携を実現します。 Salesforce 接続アプリを、パスワード認証からクライアント認証フローに移行することで、セキュリティが向上し、 Salesforce の最新認証基準に準拠するようになります。
概要
パスワード認証(リソース所有者のパスワード認証情報)は、 OAuth のレガシーなフローであり、 Salesforce では、より安全な代替手段への移行を推進するため、このフローを非推奨としています。 クライアント認証情報フローでは、API アクセスにおける個々のユーザーの認証情報への依存を排除し、代わりにクライアント ID とクライアントシークレットを持つ専用の「run-as」ユーザーを使用します。 このアプローチにより、認証情報の漏洩リスクを低減し、認証情報のローテーションを簡素化できます。
移行には、 Salesforce 側(接続済みアプリの設定および OAuth ポリシー)と、[ログソース]側の QRadar (ログソースの認証方法)の両方で設定変更が必要です。
Salesforce 連携アプリの設定
クライアント認証フローを有効にするには、 Salesforce のセットアップで、接続済みアプリの「 OAuth 」設定を編集する必要があります。
- https://login.salesforce.com から「 Salesforce 」のユーザーインターフェースにログインしてください。
- に移動します。
- 必要な接続済みアプリを見つけて、「 編集」 をクリックします。
- 「 API」(「 OAuth 」設定の有効化) で、 「 OAuth 」設定を有効にするが選択されていることを確認し、次に「 クライアント認証情報フロー 」オプションを有効にしてください。
- セーブをクリック。
「ユーザーとして実行」の設定
「実行ユーザー」は、API呼び出しを行う際にクライアント認証フローが使用する Salesforce ユーザーアカウントを指定します。 この設定は、接続されているアプリの 「管理」 ページからのみ利用可能で、 「編集」 ページからは利用できません。
- Salesforce 設定で、 アプリケーション マネージャー を検索して開きます。
- 必要な連携アプリを探し、そのアプリの横にあるドロップダウン矢印をクリックして、「 管理」 を選択します。
- 「接続済みアプリ」 の詳細ページで、「 ポリシーの編集」 をクリックします。
- 「 OAuth 」の「ポリシー」セクションで、「 許可されるユーザー」 の値が「 すべてのユーザーが自己承認可能 」に設定されていることを確認してください。
- 「 クライアント認証情報フロー 」セクションの「 実行ユーザー」 フィールドで、「 Salesforce 」ユーザーアカウントを選択します。 一部の Salesforce のUIバージョンでは、このフィールドのラベルは「 実行ユーザー」 となっています。
- セーブをクリック。
QRadar ログソースの設定
Salesforce で接続済みアプリの設定を行った後、クライアント認証フローの認証方法を使用 QRadar するように、対応するログソースを更新してください。
- ユーザー QRadar インターフェースにログインしてください。
- に移動します。
- 必要なログソースを開き、「 編集」 をクリックします。
- 認証方法を 「 クライアント認証フロー」 に設定します。
- クライアント ID およびクライアントシークレットの値を確認してください。
- セーブをクリック。