NamedCredential
指定ログイン情報を表します。指定ログイン情報では、コールアウトエンドポイントの URL と必要な認証パラメータを 1 つの定義内に指定します。指定ログイン情報は、エンドポイントとして指定できるため、認証コールアウトの設定が簡略化されます。
Metadata メタデータ型を拡張し、その fullName 項目を継承します。
ファイルのサフィックスおよびディレクトリの場所
NamedCredential コンポーネントのサフィックスは .namedCredential で、namedCredentials フォルダに保存されます。
バージョン
NamedCredential コンポーネントは、API バージョン 33.0 以降で使用できます。
項目
| 項目名 | データ型 | 説明 |
|---|---|---|
| allowMergeFieldsInBody | boolean | コールアウトが行われたときに HTTP リクエストボディに組織データを入力する差し込み項目を Apex コードで使用できるかどうかを指定します。ユーザインターフェースの [HTTP 本文の差し込み項目を許可] に対応します。デフォルトは false です。 この項目は、API バージョン 41.0 以降で使用できます。 |
| allowMergeFieldsInHeader | boolean | コールアウトが行われたときに HTTP ヘッダーに組織データを入力する差し込み項目を Apex コードで使用できるかどうかを指定します。ユーザインターフェースの [HTTP ヘッダーの差し込み項目を許可] に対応します。デフォルトは false です。 この項目は、API バージョン 41.0 以降で使用できます。 |
| authProvider | string | AuthProvider コンポーネントで表される認証プロバイダ。 |
| certificate | string | 証明書を指定する場合、Salesforce 組織が、各外部システムとの双方向 SSL 接続確立時に証明書を提供します。この証明書は、要求がユーザの Salesforce 組織からのものであることを確認するデジタル署名に使用されます。 |
| endpoint | string | コールアウトエンドポイントの URL またはルート URL。ユーザインターフェースの URL に対応します。 |
| generateAuthorizationHeader | boolean | Salesforce で認証ヘッダーが生成され、指定ログイン情報を参照する各コールアウトに適用されるかどうかを指定します。ユーザインターフェースの [認証ヘッダーを生成] に対応します。デフォルトは true です。 この項目は、API バージョン 41.0 以降で使用できます。 |
| label | string | リストビューなどの Salesforce ユーザインターフェースに表示される、指定ログイン情報のわかりやすい名前。 |
| oauthRefreshToken | string | OAuth 更新トークン。トークンの期限が切れたときに、エンドユーザの新しいアクセストークンを取得するために使用します。 |
| oauthScope | string | アクセストークンを要求するための権限の範囲を指定します。ユーザインターフェースの [範囲] に対応します。 |
| oauthToken | string | 認証サーバによって発行されるアクセストークン。 |
| password | string | 外部システムにアクセスするために組織で使用するパスワード。外部システムにアクセスするための十分な権限がログイン情報にあることを確認します。アクセスの設定方法によっては、システム管理者のパスワードの指定が必要になる場合があります。 |
| principalType | ExternalPrincipalType (string 型の列挙) | 外部システムへのアクセスに 1 セットのログイン情報と複数セットのログイン情報のどちらを使用するかを決定します。ユーザインターフェースの [ID 種別] に対応します。有効な値は、次のとおりです。
|
| protocol | AuthenticationProtocol (string 型の列挙) | 外部システムにアクセスするための認証プロトコル。有効な値は、次のとおりです。
|
| username | string | 外部システムにアクセスするために組織で使用するユーザ名。外部システムへのコールアウトを実行するための十分な権限がログイン情報にあることを確認します。アクセスの設定方法によっては、システム管理者のユーザ名の指定が必要になる場合があります。 |
宣言的なメタデータの定義のサンプル
NamedCredential コンポーネントの例を次に示します。
1<?xml version="1.0" encoding="UTF-8"?>
2<NamedCredential xmlns="http://soap.sforce.com/2006/04/metadata">
3 <allowMergeFieldsInBody>false</allowMergeFieldsInBody>
4 <allowMergeFieldsInHeader>false</allowMergeFieldsInHeader>
5 <endpoint>https://my_endpoint.example.com</endpoint>
6 <generateAuthorizationHeader>true</generateAuthorizationHeader>
7 <label>My Named Credential</label>
8 <principalType>Anonymous</principalType>
9 <protocol>NoAuthentication</protocol>
10</NamedCredential>