Index
はじめに
Salesforceの仕様変更(セキュリティ強化)により、システム管理者のユーザーのログインに、パスキー等による認証が必須となりました。
このため、ツバイソPSA・ツバイソIMAのバージョンアップでバージョンアップスクリプトを実行する際の、Salesforce環境へのアクセス方法を変更しました。これまでは、システム管理者のユーザーでログインして作業を行っていましたが、今後は次の2つの設定をお願いします。
- 外部クライアントアプリケーションの設定:ツバイソ社がバージョンアップスクリプトを実行するための接続
- ログインアクセスの許可:スクリプトの実行後に、ツバイソ社が画面で確認作業を行うためのアクセス
パッケージのインストール後、ツバイソ社がこの2つの設定を使って、バージョンアップスクリプトの実行と確認作業を行います。作業完了後、作成した外部クライアントアプリケーションの無効化をお願いします。
バージョンアップ全体の流れは、次の記事をご覧ください。
作業の流れ
Partial Copy Sandbox(以下、Sandbox)と本番環境のそれぞれで、次の順に進めます。
- ツバイソ社から、接続に使う証明書ファイル(.crt)を、バージョンアップのお問い合わせのチケットでお送りします。証明書は、環境ごと・バージョンアップのたびに新しいものをお送りします。
- 外部クライアントアプリケーションを設定し、作業日(バージョンアップスクリプトを実行する日)の前営業日までに、コンシューマー鍵とユーザー名をチケットでお知らせください。
- 作業日の前営業日に、ログインアクセスを許可してください。
- パッケージのインストール後、ツバイソ社がバージョンアップスクリプトを実行し、確認作業を行います。
- ツバイソ社からバージョンアップスクリプトの実行と確認作業の完了をご連絡した後、外部クライアントアプリケーションを無効化し、チケットでお知らせください。
外部クライアントアプリケーションの設定
システム管理者のユーザーで操作してください。
手順1. 接続アプリケーション「Salesforce CLI」のインストール
- 「設定」>「接続アプリケーションの OAuth の利用状況」を開きます。
- 「Salesforce CLI」の「インストール」をクリックします。
※ すでにインストール済みの場合は不要です。
手順2. 接続用の権限セットの作成と割り当て
- 「設定」>「権限セット」>「新規」から、権限セットを作成します(名前は任意です)。手順3で作成する外部クライアントアプリケーションを利用できるユーザーを指定するための権限セットなので、権限などを追加する必要はありません。(「ライセンス」は「なし」のままで問題ありません。)
- 作成した権限セットを、ツバイソ社が接続に使用する、システム管理者権限をお持ちのユーザー1名に割り当てます。
※ ツバイソ社は、このユーザーとしてバージョンアップスクリプトを実行します。スクリプトで更新したデータの最終更新者は、このユーザーになります。
※ 以前のバージョンアップで作成した権限セットがある場合は、新しく作成せずに、その権限セットを使用できます。その場合も、この権限セットを割り当てるのは接続に使うユーザー1名だけにし、ほかのユーザーに割り当てられていれば外してください。
手順3. 外部クライアントアプリケーションの作成
外部クライアントアプリケーションは、バージョンアップのたびに新しく作成します。以前のバージョンアップで作成したものなど、同じ名前のものがすでにある場合は、「基本情報」の外部クライアントアプリケーション名と API 参照名を別の名前にしてください(例:バージョンアップ202611、VersionUp202611)。
※Tsubaiso Intelligenceをご利用の場合は、その接続に使っている外部クライアントアプリケーションとは別に、新しく作成してください。
- 「設定」>「外部クライアントアプリケーションマネージャー」を開き、「新規外部クライアントアプリケーション」をクリックします。
- 「基本情報」に、以下を入力します。
- 外部クライアントアプリケーション名:任意(例:バージョンアップ)
- API 参照名:半角英数字(例:VersionUp)
- 取引先責任者 メール:社内のご担当者のメールアドレス
- 配信状態:ローカル
- 「API (OAuth 設定の有効化)」で「OAuth を有効化」にチェックを入れ、以下を設定します。
- コールバック URL:http://localhost:1717/OauthRedirect
- OAuth 範囲:「利用可能な OAuth 範囲」から次の3つを選び、「選択した OAuth 範囲」に移動
- API を使用してユーザーデータを管理 (api)
- Web ブラウザーを使用してユーザーデータを管理 (web)
- いつでも要求を実行 (refresh_token, offline_access)
- 「フローの有効化」で「JWT ベアラーフローを有効化」にチェックを入れます。
- 表示される「証明書アップロード」欄で、ツバイソ社がチケットでお送りした、設定している環境用の証明書を指定します。
- 「セキュリティ」の「指名ユーザーの JSON Web トークン (JWT) ベースのアクセストークンを発行」は、オフのままにします。オンにすると、バージョンアップスクリプトの実行が止まります。
- 「作成」をクリックします。
手順4. ポリシーの設定
- 作成したアプリの「ポリシー」タブで「編集」をクリックします。
- 「OAuth ポリシー」を開いて、以下を設定します。
- プラグインポリシー > 許可されているユーザー:管理者が承認したユーザーは事前承認済み(作成したばかりのアプリのため、確認のメッセージが表示されたら、そのまま「OK」をクリックします)
- アプリケーション認証 > IP 制限の緩和:IP 制限を適用(初期値のまま)
- 「アプリケーションポリシー」の「権限セットを選択」で、手順2の権限セットを選択します(「プロファイルを選択」では、何も選択しません)。
- 「保存」をクリックします。
手順5. コンシューマー鍵の確認とご連絡
- 作成したアプリの「設定」タブで「OAuth 設定」を開き、「コンシューマー鍵と秘密」をクリックして、コンシューマー鍵を確認します(本人確認の画面が表示された場合は、画面の案内に従ってください)。
- 作業日の前営業日までに、次の2点をバージョンアップのお問い合わせのチケットでお知らせください。
- コンシューマー鍵(「秘密」は不要です)
- 手順2で権限セットを割り当てたユーザーの、その環境でのユーザー名(Sandboxでは、通常、ユーザー名の末尾にSandbox名が付きます)
ログインアクセスの許可
スクリプトの実行後の確認作業は、ツバイソ社が代理ログインで行います。作業日の前営業日に、次の手順で設定してください。
- 外部クライアントアプリケーションの設定の手順2で権限セットを割り当てたユーザーでSalesforceにログインし、画面右上のご自身のアイコン(プロフィール画像)をクリックして、「設定」をクリックします。
- 左側の検索ボックスに「許可」と入力し、「アカウントログインアクセスの許可」をクリックします。
- 「ツバイソ株式会社 サポート」の「アクセス期間」で、作業日から作業の完了までが入る期間(通常は「1週間」)を選択します。
- 「保存」をクリックします。
※ アクセス期間は、保存した日から数えます。早く保存すると、作業日の前に期間が終わることがあります。
作業完了後の無効化
外部クライアントアプリケーションは、バージョンアップスクリプトの実行のためだけに使用します。バージョンアップスクリプトの実行完了後は、作成した外部クライアントアプリケーションについて、次の操作をお願いします。
- 「設定」>「外部クライアントアプリケーションマネージャー」で作成したアプリの名前をクリックし、「設定」タブで「編集」をクリックします。「OAuth 設定」を開いて(右にある「OAuth を無効化」はクリックしません)、「フローの有効化」の「JWT ベアラーフローを有効化」のチェックを外し、「保存」をクリックします。
- 「設定」>「外部クライアントアプリケーションマネージャー」で、作成したアプリの行の右端の▼をクリックし、「無効化」をクリックします。確認のメッセージが表示されたら、「OK」をクリックします。
操作が完了しましたら、チケットでお知らせください。
よくある質問
「指名ユーザーの JSON Web トークン (JWT) ベースのアクセストークンを発行」がオンになっている場合は、どうすればよいですか
作成したアプリの「設定」タブで「編集」をクリックし、「OAuth 設定」を開いて、「セキュリティ」のこの項目のチェックを外して、保存してください。
※Tsubaiso Intelligenceの接続に使っている外部クライアントアプリケーションの設定は、変更しないでください。
本番環境でも同じ設定が必要ですか
必要です。本番環境用の証明書は、Sandboxでのバージョンアップスクリプトの実行と確認作業が完了した後にお送りします。ログインアクセスの許可と、作業完了後の無効化も、本番環境で同じように行ってください。
ログインできるIPアドレスを制限している場合は、どうすればよいですか
接続に使うユーザーのプロファイルで、ログインできるIPアドレスの範囲を制限している場合は、ツバイソ社がバージョンアップスクリプトを実行するための接続ができないことがあります。設定を始める前に、チケットでご相談ください。