こんにちは、ロジカル・アーツの岡田です。
今回はデータローダからSalesforce環境にログインするときの方法についてまとめました。
目次
はじめに
データローダを使用する際、Salesforce環境へのログインが必要になります。
ログインをすることで、どのSalesforce環境のデータを取得/更新するかを指定します。
ログインは本番環境だけでなくSandbox環境に対しても行えます。
例えば本番環境のデータを取得しSandbox環境に反映しようとする場合は、本番環境にログインしexportを実行した後、一度データローダからログアウトを行い、Sandbox環境にログインしなおします。
このように、データローダからSalesforce環境へのログインはデータローダを使う上で必須の作業であり、一連の作業の中でログインの切り替えをするケースもあるかと思います。
当記事ではデータローダからSalesforce環境へのログイン方法をいくつか紹介しますので、ぜひご一読ください。
ログイン方法について
データローダの設定(Settings)内にある「Enable OAuth login from browser」のチェックボックスがオンかオフかどうかで、ログインの挙動が大きく異なります。
それぞれについて解説していきます。
データローダからの認証
データローダの設定(Settings)から、下記チェックボックスがオフになっているときのログイン方法です。
insertやupdateを選択すると、ポップアップが表示されます。
ポップアップのラジオボタンから、さらに細かくログインの挙動を選択することができます。
OAuth認証
ラジオボタンの左側を選択しているときの動作です。
Environmentにて本番環境かSandbox環境を選択し、Log inボタンを押下します。
Salesforceのログイン画面のポップアップが表示され、ユーザー名とパスワードを入力しログインします。
この方法ではMFAによる認証も必要になります。
MFAの認証が完了すると、Salesforce組織の認証画面に遷移します。
こちらを許可すればデータローダとSalesforce環境の接続が完了します。
パスワード認証
ラジオボタンの右側を選択しているときの動作です。
こちらはデータローダのウィンドウ内にてユーザー名、パスワード、ログインURLを入力しログインします。
この方法ではMFAによる認証を必要としません。
どちらの方法にも共通しているのが、ユーザー名とパスワードを入力する作業が必要という点です。
普段は入力の手間を省くためにブラウザや拡張機能にログイン情報を保存していたとしても、データローダの使用時にはコピーペーストや手入力が必要になります。
ブラウザからのOAuth認証
このログイン方法は、ブラウザ内であらかじめログインができていれば、そのログイン情報を参照しデータローダからログインを行います。
Settingの下記チェックボックスがオンになっているときのログイン方法です。
insertなどを押下すると先ほどまでと同じポップアップが表示されます。
このときラジオボタンの右(パスワード認証)を選択すると、さきほどのパスワード認証と全く同じ挙動になります。
ブラウザ認証をする場合はラジオボタンの左を選択する必要があります。
Log inボタンを押下すると、ブラウザの新規タブが立ち上がります。
認証コードの確認画面が表示されますが、そのまま続行します。
そうするとSalesforce組織の認証画面に移ります。
許可をすることでデータローダの接続が完了します。
ここまでの手順で、ユーザー名やパスワードの入力作業は必要ありません。
あらかじめSalesforce環境にログインしておくことは必要ですが、データローダを使うタイミングでSalesforce環境の確認をしているケースもあるかと思いますので、ログインの手間が減るケースは多いかと思います。
デフォルトの設定の変更
Salesforceヘルプページに記載がありますが、このブラウザ認証はデータローダのバージョン56よりデフォルトの設定となりました。
データローダのバージョンとSalesforceのバージョンはリンクしており、ヘルプページがWinter'23のリリースノート内にあるため、このタイミングを境に設定が変わっているようです。
Winter'23以前からデータローダを使用している人はこのブラウザ認証を知らない可能性があり、パソコンの交換作業などでデータローダをインストールしなおした際に、突然認証方法が変わっているということもあるかと思います。
同様にWinter'23以降からデータローダを使い始めた人は、ブラウザ認証しか知らない可能性があります。
ブラウザ認証の注意事項
データローダの使用時、複数組織にログインしていることがあると思います。
例えば、partialとdevのSandboxを同時に開いた状態でデータローダを使用するケースがあるとします。
このとき、ブラウザ認証では自動的にどちらかの組織にログインしようとします。
ブラウザ認証ではユーザー名やパスワードを入力しないため、気付かずに誤った組織にログインしてしまうことがあるかもしれません。
回避策として、データローダからログインする組織以外は一度ログアウトをすることをお勧めします。
まとめ
データローダからのログイン中にバッチサイズの変更やSalesforce環境に項目を追加すると、変更内容を反映させるためログインしなおす必要があります。
その際に毎回ユーザー名とパスワードを入力しなおすのはやはり手間になるかと思います。
この記事で、ブラウザ認証を初めて知った方もいるかと思います。
普段の業務の効率化につながると思いますので、まだ使ったことがない方はぜひ試していただければと思います。
参考文献
Salesforce API とデータローダのバージョン
https://help.salesforce.com/s/articleView?id=000381095&type=1
付録
〇データローダ内でのパスワード認証にはMFAは必要ない
以下本文より抜粋
「モバイルアプリケーションやクライアントアプリケーション (データローダなど) を含むすべての Salesforce インターフェースに適用されます(Data Loader には 2 つのログインオプションがあります。MFA が有効の場合、OAuth オプション (UI ログイン) では MFA チャレンジが生成されますが、パスワード認証 (API ログイン) では生成されません。データローダの OAuth オプションは、セキュリティキーや組み込み認証アプリによる検証方法をサポートしていません)。」
Salesforce 多要素認証に関する FAQ
https://help.salesforce.com/s/articleView?id=000396727&type=1