外部（POSTMAN）からSalesforce に接続してアクセストークンを得るまでの流れ（接続アプリケーション）

本番組織での設定となりますのでSandboxやカスタムドメインの場合エンドポイントURLが異なります。
Username-Password Flows での認証

設定 ➜ クイック検索から"アプリケーションマネージャー" ➜ "新規接続アプリケーション"を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/dadf195e-c581-9360-bb51-834073739d3c.png)

"接続アプリケーションを作成"を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/f4c25196-7446-5768-1e34-e3308e541522.png)

任意の接続アプリケーション名とメールアドレスを入力
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/79236ef2-0a65-f5c2-d2d2-c4ac0c3e3060.png)

"OAuth設定"を有効化
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/efee9d33-e1b9-f268-82cd-284804542ea9.png)

"Callback URL"を入力します。
（Sandboxやカスタムドメインの場合は異なります）
```URL: Callback URL
https://login.salesforce.com/services/oauth2/token
```

また、外部サービスに許可するスコープを選択します。
今回は、テストなので"Full Access"ですが、実際はユースケースに合わせて制限します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/0d9a85e1-96f4-c4d9-9fe1-a3ac9218f80e.png)

保存します。
作成まで数分かかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/d45f3268-3543-fd2d-10f3-05a07eef22db.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/4df95001-525c-4e2b-aeb0-8c3699a1a988.png)

作成できたらコンシューマーキーとコンシューマーシークレットを得るために、"コンシューマー詳細を管理"を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/7fc3cd9a-c106-772d-edba-d70701792e52.png)

認証が飛ぶので入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/5ae00c82-3636-9f57-42a7-8756a655d1cf.png)

"Consumer Detail"が記載されたページに移動するので厳重に保管します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/36fb6393-d9cd-139a-9168-0636e5eb53b7.png)

IP制限を緩和するために、再度カスタムアプリを開き"ポリシーを編集"を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/9d47b426-2821-2c09-28a2-64ccc7d4fa92.png)

"IP制限を緩和"を選択して保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/c7501c2b-1e99-4dbe-788d-527f6c078529.png)

また、ユーザーパスワードフローを許可するために"設定"➜"OAuthとOpenID Connect設定"を開き、"ユーザーパスワードフローを許可"をオンにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/2a2981b3-aa33-aaf5-56a7-0b7ae2a3363c.png)


後ほど必要になるセキュリティトークン"ユーザー設定"から"セキュリティトークンをリセット"を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/9de7555c-2e6d-1cfd-1a3c-1626c584c460.png)

メールに届くトークンを厳重に控えます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/cbfb1e51-71c5-f543-5bc7-2846120b6ea2.png)

POSTMANを開き、次のようなHTTPリクエストを作成します。

[POST]

```url:URL
URL: https://login.salesforce.com/services/oauth2/token
```
Params: 
- grant_type: password
- client_id: [接続アプリケーションのclient_id]
- client_secret: [接続アプリケーションのclient_secret]
- username: [組織ログイン時のユーザーネーム]
- password: [組織ログイン時のパスワード+セキュリティトークン]

```url:完成イメージ: 
https://login.salesforce.com/services/oauth2/token?grant_type=password&client_id=[接続アプリケーションのclient_id]&client_secret=[接続アプリケーションのclient_secret]&username=[組織ログイン時のユーザーネーム]&password=[組織ログイン時のパスワード+セキュリティトークン]
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/e2409fbc-c66c-d8c1-f38c-51da09ca18e4.png)

成功したら"200OK"と合わせてアクセストークンを取得できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214013/1c1ea085-698e-8efb-7202-6fa610c9d157.png)

おつかれさまでした🙌