ConnectedApp
Metadata メタデータ型を拡張し、その fullName 項目を継承します。
ファイルのサフィックスおよびディレクトリの場所
ConnectedApp コンポーネントのサフィックスは .connectedApp で、connectedApps フォルダに保存されます。
バージョン
ConnectedApp コンポーネントは、API バージョン 29.0 以降で使用できます。
項目
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| attributes | ConnectedAppAttribute[] | 接続アプリケーションのカスタム属性。 |
| canvasConfig | ConnectedAppCanvasConfig | キャンバスアプリケーションとして公開されている場合の接続アプリケーションの設定オプション。 |
| contactEmail | string | 必須。Salesforce がアプリケーション提供者またはそのサポートチームへの連絡に使用するメールアドレス。 |
| contactPhone | string | Salesforce から連絡するために使用する電話番号。 |
| description | string | アプリケーションの説明 (省略可能)。 |
| iconUrl | string | 将来の使用のために予約されています。 |
| infoUrl | string | アプリケーションについての詳細が記載された Web ページの URL (省略可能)。 |
| ipRanges | ConnectedAppIpRange[] | 接続アプリケーションでのユーザの認証を必要とせずにアプリケーションにアクセス可能な IP アドレスの範囲を指定します。 |
| label | string | 必須。アプリケーションの名前。 |
| logoUrl | string | アプリケーションのロゴ (省略可能)。このロゴは、認証時にユーザに表示されるアプリケーションリストおよび同意ページのアプリケーションのエントリに表示されます。URL には HTTPS を使用し、ロゴは 125×200 ピクセル (高さ×幅) 以下にする必要があります。デフォルトは雲のロゴです。 |
| mobileStartUrl | string | モバイルデバイスからアプリケーションにアクセスするときに、認証後、ユーザはこの URL に転送されます。URL を指定しない場合、ユーザは認証完了後アプリケーションのデフォルトのスタートページに転送されます。作成している接続アプリケーションがキャンバスアプリケーションの場合、この項目を空白のままにできます。[キャンバスアプリケーションの URL] 項目には、接続アプリケーションからコールされる URL が含まれます。 |
| oauthConfig | ConnectedAppOauthConfig | アプリケーションが Salesforce と通信する方法を指定します。 |
| oauthPolicy | ConnectedAppOauthPolicy | 接続アプリケーションに関連付ける OAuth アクセスポリシーを指定します。API バージョン 49.0 以降で利用できます。 |
| permissionSetName | string[] | 接続アプリケーションでさまざまな機能を実行するために必要な権限を指定します。API バージョン 46.0 以降で利用できます。 接続アプリケーションに複数の権限セットを割り当てることができますが、各権限セット名は別の行に入力する必要があります。同じ権限セット名を各接続アプリケーションについて複数回入力することはできません。 現在の権限セットを新しい権限セットに置き換えることで、権限セットを変更することもできます。接続アプリケーションに割り当てられた各権限セット名が一意であることを確認してください。 個々の権限セットを削除したり、接続アプリケーションのリリース: (<permissionSetName></permissionSetName>) で空の permissionSetName 文字列を入力することですべての権限セットを接続アプリケーションから削除したりできます。 |
| plugin | string | Auth.ConnectedAppPlugin を拡張してアプリケーションの動作をカスタマイズするカスタム Apex クラスの名前。 |
| pluginExecutionUser | string | プラグインを実行するユーザを指定します。ユーザが接続アプリケーションを使用するように認証されていない場合は、authorize メソッドを使用します。『Apex 開発者ガイド』の ConnectedAppPlugin クラスを参照してください。API バージョン 46.0 以降で利用できます。 組織に含まれるユーザを入力します。ユーザが組織に含まれない場合、接続アプリケーションをリリースしたときにユーザがこの項目から削除されます。ユーザを指定しない場合は、この項目を空白のままにできます。 |
| profileName | string[] | 接続アプリケーションでさまざまな機能を実行するために必要なプロファイル (基本レベルのユーザ権限) を指定します。API バージョン 46.0 以降で利用できます。 接続アプリケーションに複数のプロファイルを割り当てることができますが、各プロファイル名は別の行に入力する必要があります。同じプロファイル名を各接続アプリケーションについて複数回入力することはできません。 現在のプロファイルを新しいプロファイルに置き換えることで、プロファイルを変更することもできます。接続アプリケーションに割り当てられた各プロファイル名が一意であることを確認してください。 個々のプロファイルを削除することも接続アプリケーションのリリース: (<profileName></profileName>) で空の profileName 文字列を入力することですべてのプロファイルを接続アプリケーションから削除することもできます。 |
| samlConfig | ConnectedAppSamlConfig | アプリケーションによるシングルサインオンの使用方法を制御します。 |
| sessionPolicy | ConnectedAppSessionPolicy | 接続アプリケーションのセッションポリシーを指定します。API バージョン 49.0 以降で利用できます。 |
| startUrl | string | モバイルデバイスからのアクセスでない場合、認証後、ユーザはこの URL に転送されます。URL を指定しない場合、ユーザは認証完了後アプリケーションのデフォルトのスタートページに転送されます。URL の指定の有無にかかわらず、開始 URL は接続アプリケーションを管理することにより後で更新できます。モバイルデバイスからアプリケーションにアクセスする場合、mobileStartUrl を参照してください。作成している接続アプリケーションがキャンバスアプリケーションの場合、この項目を空のままにできます。[キャンバスアプリケーションの URL] 項目には、接続アプリケーションからコールされる URL が含まれます。 |
ConnectedAppAttribute
SAML と ConnectedApp を併用する場合にカスタム属性を構成する項目名を表します。特定のサービスプロバイダに合わせてこれらの値を調整します。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| formula | string | 必須。属性の値。 |
| key | string | 必須。属性の識別子。 |
ConnectedAppCanvasConfig
キャンバスアプリケーションとして公開されている場合の接続アプリケーションの設定オプションを表します。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| accessMethod | AccessMethod (string 型の列挙) | 必須。キャンバスアプリケーションで OAuth 認証フローを開始する方法を示します。有効な値は、次のとおりです。
|
| canvasUrl | string | 必須。キャンバスアプリケーションとして公開されたサードパーティアプリケーションの URL。 |
| lifecycleClass | string |
Canvas.CanvasLifecycleHandler Apex クラスの名前 (カスタムパラメータの制御にこのクラスを実装している場合)。 API バージョン 31.0 以降で利用できます。 |
| locations | CanvasLocationOptions (string 型の列挙)[] | キャンバスアプリケーションを表示できる場所を示します。有効な値は、次のとおりです。
|
| options | CanvasOptions (string 型の列挙)[] | キャンバスアプリケーションのパブリッシャーで [共有] ボタンとヘッダーを非表示にするかどうかおよびアプリケーションがキャンバス個人用アプリケーションかどうかを示します。有効な値は、次のとおりです。
|
| samlInitiationMethod | SamlInitiationMethod (string 型の列挙) |
SAML シングルサインオン (SSO) を使用している場合、SSO フローを開始するプロバイダを示します。
|
ConnectedAppIpRange
ユーザの認証を必要とせずにアプリケーションにアクセス可能な IP アドレスのリストを表します。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| description | string | この範囲に対応するネットワークの部分など、範囲の目的を示します。API バージョン 31.0 以降で利用できます。 |
| end | string | 必須。IP 範囲の最後のアドレス (指定した値を含む)。 |
| start | string | 必須。IP 範囲の最初のアドレス (指定した値を含む)。 |
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| assetTokenConfig | ConnectedAppOauthAssetToken | 接続アプリケーションの OAuth 設定の OAuth アセットトークン設定。API バージョン 49.0 以降で利用できます。 |
| callbackUrl | string | 必須。Salesforce が OAuth 時に接続アプリケーションにコールバックするエンドポイントです。これは OAuth redirect_uri です。 |
| certificate | string | アプリケーションが証明書を使用する場合の PEM エンコード証明書文字列。 |
| consumerKey | string | Salesforce で識別するためのコンシューマにより使用される値。OAuth 2.0 では client_id と呼ばれます。 API バージョン 32.0 以降では、この項目の値を設定できるのは作成中のみです。値を定義して保存した後は、編集できません。値は 8 文字以上 256 文字以下の英数字にする必要があり、特殊文字とスペースは使用できません。コンシューマ鍵はグローバルに一意である必要があります。 |
| consumerSecret | string |
consumerKey と組み合わされ、コンシューマによって Salesforce での識別に使用される値。OAuth 2.0 では client_secret として参照されます。通常、この値は、接続アプリケーションを作成するときに Salesforce によって生成されます。ただし、共有された秘密の値は作成中にカスタマイズできます。値を保存した後は、編集できません。設定後、値はメタデータ API 要求では返されません。 値は、8 文字以上 (256 文字以下) の英数字 (特殊文字とスペースは不可) にする必要があります。組織で別の接続アプリケーションにすでに使用されている秘密を指定した場合、エラーが発生します。 API バージョン 32.0 以降で利用できます。 |
| idTokenConfig | ConnectedAppOauthIdToken | 接続アプリケーションの OAuth 設定の ID トークン設定を指定します。API バージョン 43.0 以降で利用できます。 |
| isAdminApproved | boolean |
false (デフォルト) に設定すると、組織内のすべてのユーザがアプリケーションを認証できます。ユーザはアプリケーションに初めてアクセスするときに、アプリケーションを承認する必要があります。 true に設定すると、適切なプロファイルまたは権限セットを持つユーザのみがアプリケーションにアクセスできます。このユーザは、アプリケーションにアクセスする前に承認する必要はありません。各プロファイルの [接続アプリケーションへのアクセス] リストを編集して、アプリケーションのプロファイルを管理します。各権限セットの [割り当てられた接続アプリケーション] リストを編集して、アプリケーションの権限セットを管理します。この設定は、Group Edition では使用できません。API バージョン 46.0 以降で利用できます。 |
| isClientCredentialEnabled | boolean |
true に設定した場合、接続アプリケーションは OAuth 2.0 クライアントのログイン情報フローを使用できます。クライアントのログイン情報フローを使用するには、oauthClientCredentialUser のユーザも指定する必要があります。 false (デフォルト) に設定した場合、接続アプリケーションは、クライアントのログイン情報フローを使用できません。 API バージョン 56.0 以降で利用できます。 |
| isConsumerSecretOptional | boolean |
false (デフォルト) に設定した場合、OAuth 2.0 Web サーバフローでアクセストークンを交換する際に、接続アプリケーションのクライアントの秘密が要求されます。 クライアントアプリケーションでクライアントの秘密の機密性を維持できず、かつ Web サーバフローを使用する必要があるときは、true に設定します。接続アプリケーション用にクライアントの秘密は依然として生成されますが、この設定で、アクセストークン要求内の client_secret パラメータが不要であることを Web サーバフローに指示します。秘密を使用しない Web サーバフローよりもセキュアなオプションとしてユーザエージェントフローをお勧めします。API バージョン 49.0 以降で利用できます。 |
| isIntrospectAllTokens | boolean |
true に設定した場合、接続アプリケーションは、組織全体ですべてのアクセスを調査し、トークンを更新することが許可されます。 false に設定した場合、接続アプリケーションで調査できるのは自身のトークンのみです。また、動的クライアント登録エンドポイントを介して OAuth 2.0 接続アプリケーションを直接登録している OAuth クライアントは、自身とその登録済みアプリケーションのトークンを確認できます。API バージョン 49.0 以降で利用できます。 |
| isSecretRequiredForRefreshToken | boolean |
true (デフォルト) に設定した場合、更新トークンおよびハイブリッド更新トークンフローの認証要求でアプリケーションのクライアントの秘密が要求されます。false に設定した場合、アプリケーションが認証要求でクライアントの秘密を送信すると、Salesforce はクライアントの秘密を引き続き検証します。 クライアントの秘密を保護できる Web サーバベースのアプリケーションでは、このオプションを選択します。モバイルアプリケーションやユーザのコンピュータにインストールするアプリケーションなど、クライアントの秘密を保護できないアプリケーションでは、このオプションを選択しないことをお勧めします。API バージョン 51.0 以降で利用できます。 |
| oauthClientCredentialUser | string | OAuth 2.0 クライアントのログイン情報フローの実行ユーザ。Salesforce は、このユーザに変わってアクセストークンを返します。このユーザは「API のみ」権限を持っている必要があります。 この項目を使用するには、isClientCredentialEnabled を true に設定する必要があります。 API バージョン 56.0 以降で利用できます。 |
| scopes | ConnectedAppOauthAccessScope (string 型の列挙)[] | 接続アプリケーションを実行するユーザによって付与される権限です。メタデータをリリースする場合の有効値は次のとおりです。
メタデータを取得する場合の有効値は次のとおりです。
|
| singleLogoutUrl | string | シングルログアウトエンドポイント。この URL は、ユーザが Salesforce からログアウトするときに Salesforce がログアウト要求を送信するエンドポイントです。 |
ConnectedAppOauthAssetToken
接続アプリケーションの OAuth 設定の OAuth アセットトークン設定を指定します。API バージョン 49.0 以降で利用できます。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| assetAudiences | string | 必須。アセットトークンペイロードに関連付けられた利用者要求。この要求は、JWT の対象者を識別します。値は、大文字と小文字を区別する文字列の配列であり、それぞれに StringOrURI 値が含まれます。アセットトークンの対象コンシューマごとに利用者が指定されます。 |
| assetIncludeAttributes | boolean | 必須。true (デフォルト) に設定した場合、接続アプリケーションに関連付けられたカスタム属性はアセットトークンペイロードに含まれます。false に設定した場合、これらの属性は含まれません。 |
| assetIncludeCustomPerms | boolean | 必須。true (デフォルト) に設定した場合、接続アプリケーションに関連付けられたカスタム権限はアセットトークンペイロードに含まれます。false に設定した場合、カスタム権限は含まれません。 |
| assetSigningCertId | string | 必須。JWT 証明書の署名の秘密の ID。証明書サイズは 4 KB を超えることはできません。超える場合、DER エンコードファイルを使用して、サイズを削減してください。 |
| assetValidityPeriod | int | 必須。アセットトークンの有効期間。有効性は 3 分以内のアサーションの有効時間である必要があります (UTC で測定された 1970-01-01T0:0:0Z からの秒数として表記)。 |
ConnectedAppOauthIdToken
接続アプリケーションの OAuth 設定の ID トークン設定を指定します。API バージョン 43.0 以降で利用できます。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| idTokenAudience | string | この ID トークンが対象とする利用者。値は、大文字と小文字を区別する文字列の配列です。利用者を指定しない場合、証明書利用者の OAuth 2.0 の client_id がデフォルトの利用者として返されます。それ以外の場合、他の利用者が aud 値の client_id で返されます。 |
| idTokenIncludeAttributes | boolean | ID トークンに属性が含まれるかどうかを示します。 |
| idTokenIncludeCustomPerms | boolean | ID トークンにカスタム権限が含まれるかどうかを示します。 |
| idTokenIncludeStandardClaims | boolean | ID トークンに認証イベントに関する標準要求が含まれるかどうかを示します。 |
| idTokenValidity | int | ID トークンの発行後、ID トークンが有効な期間。指定できる値は 1 ~ 720 分です。デフォルトは 2 分です。 |
ConnectedAppOauthPolicy
接続アプリケーションの OAuth アクセスポリシーを指定します。API バージョン 49.0 以降で利用できます。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| ipRelaxation | string | 必須。接続アプリケーションへのユーザのアクセスを IP 範囲で制限するかどうかを指定します。有効なオプションは、次のとおりです。
|
| refreshTokenPolicy | string | 必須。更新トークンの有効期間を指定します。 更新トークンを提供する場合、ユーザはアクセストークンの期限 (セッションタイムアウト値で定義) が切れても再承認することなく OAuth 対応の接続アプリケーションに引き続きアクセスできます。接続アプリケーションは、更新トークンをアクセストークンと交換して新しいセッションを開始します。更新トークンポリシーは、発行された更新トークンの使用時にのみ評価され、ユーザの現在のセッションに影響を与えることはありません。更新トークンは、ユーザのセッションが期限切れになったか、使用できないときにのみ必要になります。たとえば、1 時間後にトークンが期限切れになるように更新トークンポリシーを設定します。ユーザがアプリケーションを 2 時間使用する場合、1 時間後にユーザが再認証を強制されることはありません。ただし、セッションの期限が切れ、クライアントが新しいセッションのための更新トークンの交換を試みた場合、ユーザは再度認証を要求されます。 有効なオプションは、次のとおりです。
|
| singleLogoutUrl | string | シングルログアウトが有効化な場合は、シングルログアウト URL を指定します。ユーザが Salesforce からログアウトすると、Salesforce はログアウト要求をこの URL に送信します。シングルログアウト URL は、https:// で始まる絶対 URL にする必要があります。 |
ConnectedAppSamlConfig
アプリケーションによるシングルサインオンの使用方法を指定します。
ConnectedAppSessionPolicy
接続アプリケーションのセッションポリシーの設定オプションを指定します。このポリシーを使用して、ユーザのセッションが再認証されるまでの期間を定義したり、接続アプリケーションへのユーザアクセスをブロックしたり、アプリケーションにアクセスするために多要素認証 (MFA) を必須にしたりすることもできます。API バージョン 49.0 以降で利用できます。
| 項目名 | 項目の型 | 説明 |
|---|---|---|
| policyAction | string | 高保証セッションセキュリティレベルを接続アプリケーションに適合する場合、関連する高保証アクションを指定します。有効な値は、次のとおりです。
|
| sessionLevel | string | 接続アプリケーションに高保証セッションセキュリティレベルを適用します。このセッションレベルでは、ユーザが接続アプリケーションにログインするときに多要素認証を使用して ID を検証することが要求されます。 |
| sessionTimeout | int | 接続アプリケーションのセッションが持続する時間の長さ。ここで値を設定しない場合、Salesforce では接続アプリケーションユーザのプロファイルのタイムアウト値が使用されます。ユーザのプロファイルにタイムアウト値が指定されていない場合、Salesforce は組織の [セッションの設定] のタイムアウト値を使用します。 |
複数のコールバック URL 値を入力できます。実行時、Salesforce は、アプリケーションによって指定されたコールバック URL をこれらの値のいずれかと照合して検証します。各コールバック URL は、改行で区切る必要があります。新規行をプログラムで入力するには、\r 改行文字を使用します。
複数のコールバック URL を使用する ConnectedApp コンポーネントの例を次に示します。
組織の ConnectedApp メタデータをリリースまたは取得するために使用される、パッケージマニフェストの例を次��示します。
使用方法
メタデータ API を使用して SAML が有効な接続アプリケーションを作成し、サービスプロバイダに [Idp-init のログイン URL] を設定する必要がある場合、次の 2 つのオプションがあります。
app パラメータにサービスプロバイダアプリケーション ID を次の形式で使用できます。この値は、Salesforce ユーザインターフェースに表示されます。[設定] から、[クイック検索] ボックスに「接続アプリケーション」と入力し、[接続アプリケーション] を選択してから、接続アプリケーションの名前をクリックして、その詳細ページを表示します。
または、メタデータ API のみを使用して接続アプリケーションを設定する場合、サービスプロバイダアプリケーションの apiName パラメータを次の形式で使用できます。apiName パラメータは、メタデータ型から継承された fullName です。
マニフェストファイル内のワイルドカードのサポート
このメタデータ型では、package.xml マニフェストファイル内のワイルドカード文字 * (アスタリスク) がサポートされます。マニフェストファイルの使用についての詳細は、「zip ファイルを使用したメタデータのリリースと取得」を参照してください。