この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

ConnectedApp

接続アプリケーション設定を表します。接続アプリケーションを使用することで、API や標準プロトコル (SAML、OAuth、OpenID Connect など) によって、外部アプリケーションを Salesforce に統合できるようになります。接続アプリケーションではこうしたプロトコルを使用して、外部アプリケーションの認証、承認、シングルサインオン (SSO) の提供を行います。Salesforce に統合された外部アプリケーションは、カスタマーサクセスプラットフォームをはじめとするプラットフォームやデバイス、SaaS サブスクリプションで実行できます。

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 文字列を入力することですべての権限セットを接続アプリケーションから削除したりできます。

この項目を使用するには、ConnectedAppOauthConfig サブタイプの isAdminApproved 項目を true に設定する必要があります。

メモ

plugin string Auth.ConnectedAppPlugin を拡張してアプリケーションの動作をカスタマイズするカスタム Apex クラスの名前。
pluginExecutionUser string プラグインを実行するユーザを指定します。ユーザが接続アプリケーションを使用するように認証されていない場合は、authorize メソッドを使用します。『Apex 開発者ガイド』ConnectedAppPlugin クラスを参照してください。API バージョン 46.0 以降で利用できます。

組織に含まれるユーザを入力します。ユーザが組織に含まれない場合、接続アプリケーションをリリースしたときにユーザがこの項目から削除されます。ユーザを指定しない場合は、この項目を空白のままにできます。

組織でこの項目を使用するには、ConAppPluginExecuteAsUser 設定を有効にする必要があります。

メモ

profileName string[] 接続アプリケーションでさまざまな機能を実行するために必要なプロファイル (基本レベルのユーザ権限) を指定します。API バージョン 46.0 以降で利用できます。

接続アプリケーションに複数のプロファイルを割り当てることができますが、各プロファイル名は別の行に入力する必要があります。同じプロファイル名を各接続アプリケーションについて複数回入力することはできません。

現在のプロファイルを新しいプロファイルに置き換えることで、プロファイルを変更することもできます。接続アプリケーションに割り当てられた各プロファイル名が一意であることを確認してください。

個々のプロファイルを削除することも接続アプリケーションのリリース: (<profileName></profileName>) で空の profileName 文字列を入力することですべてのプロファイルを接続アプリケーションから削除することもできます。

この項目を使用するには、ConnectedAppOauthConfig サブタイプの isAdminApproved 項目を true に設定する必要があります。

メモ

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 認証フローを開始する方法を示します。有効な値は、次のとおりです。
  • Get — OAuth 認証が使用され、サードパーティアプリケーションがユーザ情報にアクセスすることを許可するように求められます。このアクセスメソッドを使用する場合、キャンバスアプリケーションで OAuth 認証フローが開始されるようにする必要があります。
  • Post — OAuth 認証を使用しますが、システム管理者がキャンバスアプリケーションをインストールする場合、キャンバスアプリケーションはユーザのアクセスを暗黙的に許可します。したがって、サードパーティがユーザ情報にアクセスすることを許可するようにユーザが求められることはありません。このアクセスメソッドを使用する場合、認証は直接キャンバスアプリケーションの URL に post 送信されます。
canvasUrl string 必須。キャンバスアプリケーションとして公開されたサードパーティアプリケーションの URL。
lifecycleClass string Canvas.CanvasLifecycleHandler Apex クラスの名前 (カスタムパラメータの制御にこのクラスを実装している場合)。

API バージョン 31.0 以降で利用できます。

locations CanvasLocationOptions (string 型の列挙)[] キャンバスアプリケーションを表示できる場所を示します。有効な値は、次のとおりです。
  • Aura — 今後の使用のために予約されています。
  • AppLauncher — 今後の使用のために予約されています。
  • Chatter — キャンバスアプリケーションを Chatter タブのアプリケーションナビゲーションリストに表示できます。
  • ChatterFeed — キャンバスアプリケーションを Chatter フィード項目として表示できます。
  • MobileNav — キャンバスアプリケーションを Salesforce モバイルアプリケーションのモバイルカードに表示できます。API バージョン 31.0 以降で利用できます。
  • None — キャンバスアプリケーションをキャンバスアプリケーションのプレビューアでのみ表示できます。
  • OpenCTI — キャンバスアプリケーションをコール制御ツールに表示できます。
  • PageLayout — キャンバスアプリケーションをページレイアウトに表示できます。Salesforce モバイルアプリケーションで参照する場合、キャンバスアプリケーションはレコード詳細ページに表示されます。API バージョン 31.0 以降で利用できます。
  • Publisher — キャンバスアプリケーションをグローバルアクションとして表示できます。
  • ServiceDesk — キャンバスアプリケーションを Salesforce コンソールのフッターまたはサイドバーに表示できます。
  • UserProfile — 今後の使用のために予約されています。
  • Visualforce — キャンバスアプリケーションを Visualforce ページに表示できます。
options CanvasOptions (string 型の列挙)[] キャンバスアプリケーションのパブリッシャーで [共有] ボタンとヘッダーを非表示にするかどうかおよびアプリケーションがキャンバス個人用アプリケーションかどうかを示します。有効な値は、次のとおりです。
  • HideShare — 関連するキャンバスアプリケーションのパブリッシャーで [共有] ボタンが非表示になります。API バージョン 30.0 以降で利用できます。
  • HideHeader — 関連するキャンバスアプリケーションのパブリッシャーでヘッダーが非表示になります。API バージョン 30.0 以降で利用できます。
  • PersonalEnabled — エンドユーザは、アプリケーションをキャンバス個人用アプリケーションとしてインストールできます。API バージョン 32.0 以降で利用できます。
samlInitiationMethod SamlInitiationMethod (string 型の列挙) SAML シングルサインオン (SSO) を使用している場合、SSO フローを開始するプロバイダを示します。
  • IdpInitiated — ID プロバイダが開始します。Salesforce は、SSO フローを開始するための初期要求を行います。
  • SpInitiated — サービスプロバイダが開始します。キャンバスアプリケーションは、呼び出された後に SSO フローを開始します。
  • None — キャンバスアプリケーションは SAML SSO を使用していません。API バージョン 31.0 以降で利用できます。

ConnectedAppIpRange

ユーザの認証を必要とせずにアプリケーションにアクセス可能な IP アドレスのリストを表します。

項目名 項目の型 説明
description string この範囲に対応するネットワークの部分など、範囲の目的を示します。API バージョン 31.0 以降で利用できます。
end string 必須。IP 範囲の最後のアドレス (指定した値を含む)。
start string 必須。IP 範囲の最初のアドレス (指定した値を含む)。

ConnectedAppOauthConfig

接続アプリケーションと Salesforce との通信方法を設定する項目名を表します。

項目名 項目の型 説明
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 のみ」権限を持っている必要があります。

この項目を使用するには、isClientCredentialEnabledtrue に設定する必要があります。

API バージョン 56.0 以降で利用できます。

scopes ConnectedAppOauthAccessScope (string 型の列挙)[] 接続アプリケーションを実行するユーザによって付与される権限です。メタデータをリリースする場合の有効値は次のとおりです。
  • Basic — ID URL サービスへのアクセスを許可します (AddressEmailPhoneProfile をリリースする場合と同じ動作)。
  • Api — API を介したログインユーザのアカウントへのアクセスを許可します。
  • Web — Web で access_token を使用することを許可します。この使用には visualforce も含まれ、Visualforce ページへのアクセスが許可されます。
  • Full — ログインユーザがアクセスできるすべてのデータへのアクセスを許可します。
  • Chatter — Connect REST API リソースへのアクセスのみを許可します。
  • CustomApplications — Visualforce を使用したカスタムアプリケーションなどのカスタムアプリケーションへのアクセスを提供します。
  • RefreshToken — 更新トークンを受信できる場合に、それを返すことを指定します (OfflineAccess をリリースする場合と同じ動作)。
  • OpenID — ログインユーザの OpenID Connect アプリケーションの一意の識別子へのアクセスを許可します。
  • Profile — ログインユーザのプロファイルへのアクセスを許可します (Basic をリリースする場合と同じ動作)。
  • Email — ログインユーザのメールアドレスへのアクセスを許可します (Basic をリリースする場合と同じ動作)。
  • Address — ログインユーザの住所へのアクセスを許可します (Basic をリリースする場合と同じ動作)。
  • Phone — ログインユーザの電話番号値へのアクセスを許可します (Basic をリリースする場合と同じ動作)。
  • OfflineAccess — ユーザがオフラインのときにアプリケーションがユーザのデータを操作し更新トークンを取得することを許可します (RefreshToken をリリースする場合と同じ動作)。
  • CustomPermissions接続アプリケーションに関連付けられている組織のカスタム権限へのアクセスを許可し現在のユーザで各権限が有効かどうかを示します。
  • Wave — Analytics REST API リソースへのアクセスを許可します。API バージョン 35.0 以降で利用できます。
  • Eclair — Analytics REST API Charts Geodata リソースへのアクセスを許可します。API バージョン 35.0 以降で利用できます。
  • Pardot — ユーザの代わりに Pardot API サービスへアクセスすることを許可します。アクセス可能なすべてのサービスは、Pardot アカウントで管理します。API バージョン 49.0 以降で利用できます。
  • Lightning — ハイブリッドアプリケーションが OAuth 2.0 ハイブリッドアプリケーショントークンフローおよびハイブリッドアプリケーション更新トークンフローを介して Lightning の子セッションを直接取得できるようにします。API バージョン 51.0 以降で利用できます。
  • Content — ハイブリッドアプリケーションが OAuth 2.0 ハイブリッドアプリケーショントークンフローおよびハイブリッドアプリケーション更新トークンフローを介してコンテンツの子セッションを直接取得できるようにします。API バージョン 51.0 以降で利用できます。
  • CDPIngest — Data Cloud の取り込み API サービスにアクセスできるようにします。顧客はこれらの API サービスを使用して、Data Cloud の外部データセットのアップロードと管理を行います。API バージョン 52.0 以降で利用できます。
  • Chatbot — Einstein ボット API サービスへのアクセスを許可します。API バージョン 54.0 以降で利用できます。

メタデータを取得する場合の有効値は次のとおりです。

  • Api — API を介したログインユーザのアカウントへのアクセスを許可します。
  • Basic — ID URL サービスへのアクセスを許可し、AddressEmailPhoneProfile を含めます。
  • Chatter — Connect REST API リソースへのアクセスのみを許可します。
  • CustomApplications — Visualforce を使用したカスタムアプリケーションなどのカスタムアプリケーションへのアクセスを許可します。
  • Full — ログインユーザがアクセスできるすべてのデータへのアクセスを許可します。
  • OpenID — ログインユーザの OpenID Connect アプリケーションの一意の識別子へのアクセスを許可します。
  • CDPIngest — Data Cloud の取り込み API サービスにアクセスできるようにします。顧客はこれらの API サービスを使用して、Data Cloud の外部データセットのアップロードと管理を行います。API バージョン 52.0 以降で利用できます。
  • Pardot — ユーザの代わりに Pardot API サービスへアクセスすることを許可します。アクセス可能なすべてのサービスは、Pardot アカウントで管理します。API バージョン 49.0 以降で利用できます。
  • Lightning — ハイブリッドアプリケーションが OAuth 2.0 ハイブリッドアプリケーショントークンフローおよびハイブリッドアプリケーション更新トークンフローを介して Lightning の子セッションを直接取得できるようにします。API バージョン 51.0 以降で利用できます。
  • Content — ハイブリッドアプリケーションが OAuth 2.0 ハイブリッドアプリケーショントークンフローおよびハイブリッドアプリケーション更新トークンフローを介してコンテンツの子セッションを直接取得できるようにします。API バージョン 51.0 以降で利用できます。
  • RefreshToken — 更新トークンを受信できる場合にそれを返すように指定します。OfflineAccess を許可する場合と同じです。
  • Wave — Analytics REST API リソースへのアクセスを許可します。API バージョン 35.0 以降で利用できます。
  • Eclair — Analytics REST API Charts Geodata リソースへのアクセスを許可します。API バージョン 35.0 以降で利用できます。
  • Web — Web で access_token を使用することを許可します。この使用には visualforce も含まれ、Visualforce ページへのアクセスが許可されます。
  • Chatbot — Einstein ボット API サービスへのアクセスを許可します。API バージョン 54.0 以降で利用できます。
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 範囲で制限するかどうかを指定します。有効なオプションは、次のとおりです。
  • ENFORCE (デフォルト) — ユーザプロファイルに割り当てられた IP 範囲など、組織に対して設定された IP 制限を適用します。
  • BYPASS_2FACTOR — アプリケーションを実行しているユーザは、次のいずれかの条件を満たす場合に、組織の IP 制限をスキップできます。
    • アプリケーションに許可された IP 範囲のリストが存在し、アプリケーションが Web サーバの OAuth 認証フローを使用している。これらの IP から送信された要求のみが許可されます。
    • アプリケーションに許可された IP 範囲のリストが存在しないが、アプリケーションが Web サーバの認証フローを使用している。新しいブラウザまたはデバイスから Salesforce にアクセスした場合、ユーザは ID 検証を正常に完了する。
  • BYPASS — ユーザは組織の IP 制限なしでこのアプリケーションを実行できます。
  • ENFORCE_RELAXREFRESH — ユーザプロファイルに割り当てられた IP 範囲など、組織に対して設定された IP 制限を適用します。ただし、このオプションでは、接続アプリケーションが更新トークンを使用してアクセストークンを取得する場合、この制限はスキップされます。
refreshTokenPolicy string 必須。更新トークンの有効期間を指定します。

更新トークンを提供する場合、ユーザはアクセストークンの期限 (セッションタイムアウト値で定義) が切れても再承認することなく OAuth 対応の接続アプリケーションに引き続きアクセスできます。接続アプリケーションは、更新トークンをアクセストークンと交換して新しいセッションを開始します。更新トークンポリシーは、発行された更新トークンの使用時にのみ評価され、ユーザの現在のセッションに影響を与えることはありません。更新トークンは、ユーザのセッションが期限切れになったか、使用できないときにのみ必要になります。たとえば、1 時間後にトークンが期限切れになるように更新トークンポリシーを設定します。ユーザがアプリケーションを 2 時間使用する場合、1 時間後にユーザが再認証を強制されることはありません。ただし、セッションの期限が切れ、クライアントが新しいセッションのための更新トークンの交換を試みた場合、ユーザは再度認証を要求されます。

有効なオプションは、次のとおりです。
  • zero — 更新トークンは直ちに無効になります。ユーザはすでに発行されている現在のセッション (アクセストークン) を使用できますが、アクセストークンの期限が切れたときに新しいセッションを取得することはできません。
  • infinite — ユーザまたは Salesforce システム管理者が取り消さない限り、更新トークンを無期限に使用できます。デフォルト設定。
  • specific_lifetime:number:HOURS, DAYS, MONTHS — 更新トークンは一定期間有効です。たとえば、ポリシーで specific_lifetime:1:DAYS に設定されている場合、ユーザは 24 時間のみ新しいセッションを取得できます。
  • specific_inactivity:number:HOURS, DAYS, MONTHS — 更新トークンは、指定された期間内で使用されている限り、有効です。たとえば、specific_inactivity:7:DAYS に設定されている場合、更新トークンが 7 日以内に新しいセッションのために交換されなければ、次のトークン使用の試行は失敗します。期限切れのトークンは新しいセッションを生成できません。更新トークンが 7 日以内に交換された場合、そのトークンはさらに次の 7 日間有効です。無操作状態の監視期間もリセットされます。
singleLogoutUrl string シングルログアウトが有効化な場合は、シングルログアウト URL を指定します。ユーザが Salesforce からログアウトすると、Salesforce はログアウト要求をこの URL に送信します。シングルログアウト URL は、https:// で始まる絶対 URL にする必要があります。

ConnectedAppSamlConfig

アプリケーションによるシングルサインオンの使用方法を指定します。

項目名 項目の型 説明
acsUrl string 必須。サービスプロバイダから取得するアサーションコンシューマサービス URL。
certificate string アプリケーションが証明書を使用する場合の PEM エンコード証明書文字列。
encryptionCertificate string サービスプロバイダへの SAML アサーションの暗号化に使用する証明書の名前。この証明書は、組織の [証明書と鍵の管理] リストに保存されます。API バージョン 30.0 以降で利用できます。
encryptionType

SamlEncryptionType

(string 型の列挙)
Salesforce が ID プロバイダの場合、SAML 設定ではサービスプロバイダへの SAML アサーションの暗号化に使用する暗号化メソッドを指定できます。サービスプロバイダは、SAML アサーション内の暗号化メソッドを検出して復号化できるようにします。有効な値は、次のとおりです。
  • AES_128 — 128 ビットの鍵
  • AES_256 — 256 ビットの鍵
  • Triple_Des — トリプル DES アルゴリズム
API バージョン 30.0 以降で利用できます。
entityUrl string 必須。サービスプロバイダから取得するエンティティ ID。
issuer string SAML レスポンスを送信する URI。サービスプロバイダはこの URI を使用して、レスポンスを送信した ID プロバイダを特定できます。API バージョン 29.0 以降で利用できます。
samlIdpSLOBindingEnum SamlIdpSLOBinding (string 型の列挙) シングルログアウトに使用されるサービスプロバイダの SAML HTTP バインド種別。API バージョン 40.0 以降で利用できます。有効な値は、次のとおりです。
  • PostBinding
  • RedirectBinding
samlNameIdFormat SamlNameIdFormatType (string 型の列挙) サービスプロバイダ (SP) が要求する、ユーザのシングルサインオン識別子の形式を示します。API バージョン 29.0 以降で利用できます。有効な値は、次のとおりです。
  • Unspecified (デフォルト) — 形式は指定されません。
  • EmailAddress — 件名種別がユーザの名前または統合 ID (SP の内部の ID) である場合に使用します。
  • Persistent — ユーザ ID および永続 ID の件名種別と併用します。
  • Transient — 件名種別がカスタム属性である場合に使用し、ユーザがログインするたびに変更される可能性があります。
samlSigningAlgoType SamlSigningAlgoType (string 型の列挙) Salesforce が ID プロバイダの場合に SAML 要求および応答に適用される署名アルゴリズムを示します。選択した署名アルゴリズムは、組織からのシングルサインオン応答とシングルログアウト応答の両方に適用されます。API バージョン 50.0 以降で利用できます。有効な値は、次のとおりです。
  • SHA1
  • SHA256
samlSloUrl string 接続アプリケーションのサービスプロバイダ (SP) の SAML シングルログアウトエンドポイント。このエンドポイントは、ユーザが Salesforce からログアウトするときに SAML の LogoutRequests と LogoutResponses が送信される場所です。このエンドポイントは SP によって提供されます。API バージョン 40.0 以降で利用できます。
samlSubjectCustomAttr string samlSubjectTypeCustomAttr である場合、ここにカスタム値を含めます。それ以外の場合は、空のままにします。API バージョン 29.0 以降で利用できます。
samlSubjectType SamlSubjectType (string 型の列挙) 必須。ユーザのシングルサインオン識別子。有効な値は、次のとおりです。
  • Username — Salesforce ユーザ名。
  • FederationId — サービスプロバイダでのユーザの識別子。この値はサービスプロバイダから取得します。
  • UserId — 15 文字の Salesforce ユーザ識別子。
  • PersistentID — ID プロバイダおよびサービスプロバイダに固有の永続的で不透明な識別子。
  • CustomAttrsamlSubjectCustomAttr のカスタム項目値から取得する識別子。

ConnectedAppSessionPolicy

接続アプリケーションのセッションポリシーの設定オプションを指定します。このポリシーを使用して、ユーザのセッションが再認証されるまでの期間を定義したり、接続アプリケーションへのユーザアクセスをブロックしたり、アプリケーションにアクセスするために多要素認証 (MFA) を必須にしたりすることもできます。API バージョン 49.0 以降で利用できます。

項目名 項目の型 説明
policyAction string 高保証セッションセキュリティレベルを接続アプリケーションに適合する場合、関連する高保証アクションを指定します。有効な値は、次のとおりです。
  • Block — 組織のユーザが接続アプリケーションにアクセスできなくなります。アプリケーションをブロックすると、接続アプリケーションを使用する現在のすべてのユーザセッションが終了し、すべての新しいセッションが防止されます。
  • RaiseSessionLevel — ユーザが接続アプリケーションにログインするときに多要素認証を使用して ID を検証することを要求します。この設定は、API ログインのユーザ承認ステップを含む承認フローに適用されます。これらのフローは、OAuth 2.0 更新トークンフロー、Web サーバーフロー、ユーザエージェントフローです。JSON Web トークン (JWT) ベアラーフローなど、その他のフローにはユーザ承認ステップは含まれていません。ユーザ承認ステップのないフローでは、高保証セッションセキュリティレベルでの API ログインはブロックされます。
sessionLevel string 接続アプリケーションに高保証セッションセキュリティレベルを適用します。このセッションレベルでは、ユーザが接続アプリケーションにログインするときに多要素認証を使用して ID を検証することが要求されます。
sessionTimeout int 接続アプリケーションのセッションが持続する時間の長さ。ここで値を設定しない場合、Salesforce では接続アプリケーションユーザのプロファイルのタイムアウト値が使用されます。ユーザのプロファイルにタイムアウト値が指定されていない場合、Salesforce は組織の [セッションの設定] のタイムアウト値を使用します。

宣言的なメタデータの定義のサンプル

ConnectedApp コンポーネントの例を次に示します。

1<?xml version="1.0" encoding="UTF-8"?>
2<ConnectedApp xmlns="http://soap.sforce.com/2006/04/metadata">
3    <attributes>
4        <formula>$Api.Enterprise_Server_URL_100</formula>
5        <key>test</key>
6    </attributes>
7    <attributes>
8        <formula>$Api.Partner_Server_URL_60</formula>
9        <key>test1</key>
10    </attributes>
11   <canvasConfig>
12        <accessMethod>Get</accessMethod>
13        <canvasUrl>https://salesforce.com</canvasUrl>
14        <lifecycleClass>MyCanvasListener</lifecycleClass>
15        <locations>Chatter</locations>
16        <locations>Visualforce</locations>
17        <locations>Aura</locations>
18        <locations>Publisher</locations>
19        <locations>ChatterFeed</locations>
20        <locations>OpenCTI</locations>
21        <locations>MobileNav</locations>
22        <locations>PageLayout</locations>
23        <options>HideShare</options>
24        <options>HideHeader</options>
25        <options>PersonalEnabled</options>
26        <samlInitiationMethod>None</samlInitiationMethod>
27    </canvasConfig>
28    <canvas>
29    	<locationOptions>NONE</locationOptions>
30    	<samlInitiationMethod>None</samlInitiationMethod>
31    	<accessMethod>Get</accessMethod>
32    	<canvasOptions>PE</canvasOptions>
33    	<lifecycleClass>MyCanvasListener</lifecycleClass>
34    	<canvasUrl>https://salesforce.com</canvasUrl>
35	</canvas>
36    <contactEmail>example@salesforce.com</contactEmail>
37    <contactPhone>1231231234</contactPhone>
38    <description>Test App</description>
39    <iconUrl>https://c1.sfdcstatic.com/content/dam/sfdc-docs/www/logos/salesforce-logo-cloud.png</iconUrl>
40    <infoUrl>https://c1.sfdcstatic.com/content/dam/sfdc-docs/www/logos/salesforce-logo-cloud.png</infoUrl>
41    <startUrl>https://www.salesforce.com</startUrl>
42    <ipRanges>
43        <end>000.0.0.1</end>
44        <start>000.0.0.2</start>
45	<description>Test</description>
46    </ipRanges>
47    <ipRanges>
48        <end>000.0.0.1</end>
49        <start>000.0.0.2</start>
50	<description>Test1</description>
51    </ipRanges>
52    <label>TestApp</label>
53    <logoUrl>https://c1.sfdcstatic.com/content/dam/sfdc-docs/www/logos/salesforce-logo-cloud.png</logoUrl>
54    <profileName>Test</profileName>
55    <permissionSetName>TestPermission</permissionSetName>
56    <mobileStartUrl>http://www.mobile.com</mobileStartUrl>
57    <mobileAppConfig>
58        <applicationBinaryFile></applicationBinaryFile>
59        <applicationBinaryFileName>test</applicationBinaryFileName>
60        <applicationBundleIdentifier>testtest</applicationBundleIdentifier>
61        <applicationIconFileName>test</applicationIconFileName>
62	<applicationIconFile>test</applicationIconFile>
63	<applicationFileLength>5</applicationFileLength>
64        <applicationInstallUrl>https://salesforce.com</applicationInstallUrl>
65        <devicePlatform>ios</devicePlatform>
66        <deviceType>minitablet</deviceType>
67        <minimumOsVersion>2</minimumOsVersion>
68        <privateApp>true</privateApp>
69        <version>2</version>
70    </mobileAppConfig>
71    <oauthConfig>
72        <assetTokenConfig>
73            <assetAudiences>http://asset.audience.com</assetAudiences>
74            <assetIncludeAttributes>true</assetIncludeAttributes>
75            <assetIncludeCustomPerms>true</assetIncludeCustomPerms>
76            <assetSigningCertId>${cert.id}</assetSigningCertId>
77            <assetValidityPeriod>1440</assetValidityPeriod>
78        </assetTokenConfig>
79        <callbackUrl>https://www.callback.com</callbackUrl>
80        <!--  NOTE, TEST.orgId will get replaced with the org ID of the context org, so we will have a unique consumer key in every scratch org.  -->
81        <consumerKey>3MVG9AOp4kbriZOcnmoLmTrguy9ryzcLbBjoNY...${TEST.orgId}</consumerKey>
82		<consumerSecret>3MVG9AOp4k...</consumerSecret>
83		<certificate>3MVG9AOp4kbriZOInmoLmTrguy9ryzcLbBjoNY...</certificate>
84        <scopes>Basic</scopes>
85        <scopes>Chatter</scopes>
86        <scopes>OpenID</scopes>
87        <scopes>CustomPermissions</scopes>
88		<singleLogoutUrl>https://www.logout.com</singleLogoutUrl>
89        <isAdminApproved>false</isAdminApproved>
90        <isConsumerSecretOptional>false</isConsumerSecretOptional>
91        <isIntrospectAllTokens>false</isIntrospectAllTokens>
92		<idTokenConfig>
93			<idTokenAudience>https://idtoken.audience.com</idTokenAudience>
94			<idTokenIncludeAttributes>true</idTokenIncludeAttributes>
95			<idTokenIncludeCustomPerms>true</idTokenIncludeCustomPerms>
96			<idTokenIncludeStandardClaims>true</idTokenIncludeStandardClaims>
97			<idTokenValidity>20</idTokenValidity>
98		</idTokenConfig>
99    </oauthConfig>
100    <oauthPolicy>
101        <ipRelaxation>ENFORCE</ipRelaxation>
102        <refreshTokenPolicy>infinite</refreshTokenPolicy>
103        <singleLogoutUrl>https://www.logout.com</singleLogoutUrl>
104    </oauthPolicy>
105    <plugin>ConnectedAppPluginTest</plugin>
106    <pluginExecutionUser>testuser@salesforce.com</pluginExecutionUser>
107    <samlConfig>
108        <acsUrl>http://www.acs.com</acsUrl>
109        <encryptionType>AES_128</encryptionType>
110	<encryptionCertificate>3MVG9AOp4kbriZOInmoLmTrguy9ryzcLbBjoNY...</encryptionCertificate>
111	<certificate>3MVG9AOp4kbriZOInmoLmTrguy9ryzcLbBjoNY...</certificate>
112	<samlSubjectCustomAttr>test</samlSubjectCustomAttr>
113        <entityUrl>http://www.entity.com</entityUrl>
114        <issuer>https://salesforce.com</issuer>
115        <samlIdpSLOBindingEnum>RedirectBinding</samlIdpSLOBindingEnum>
116        <samlNameIdFormat>Unspecified</samlNameIdFormat>
117        <samlSloUrl>https://www.salesforce.com</samlSloUrl>
118        <samlSubjectType>CustomAttribute</samlSubjectType>
119    </samlConfig>
120    <sessionPolicy>
121        <policyAction>RaiseSessionLevel</policyAction>
122        <sessionLevel>HIGH_ASSURANCE</sessionLevel>
123        <sessionTimeout>720</sessionTimeout>
124    </sessionPolicy>
125</ConnectedApp>

複数のコールバック URL 値を入力できます。実行時、Salesforce は、アプリケーションによって指定されたコールバック URL をこれらの値のいずれかと照合して検証します。各コールバック URL は、改行で区切る必要があります。新規行をプログラムで入力するには、\r 改行文字を使用します。

複数のコールバック URL を使用する ConnectedApp コンポーネントの例を次に示します。

1<?xml version="1.0" encoding="UTF-8"?>
2<ConnectedApp xmlns="http://soap.sforce.com/2006/04/metadata">
3 <contactEmail>example@salesforce.com</contactEmail>
4 <label>MyConnectedApp</label>
5 <oauthConfig>
6 <callbackUrl>https://example.com/callback1
7https://example.com/callback2
8https://example.com/callback3</callbackUrl>
9 <consumerKey>3MVG9AOp4kbriZOcnmoLmTrguy9ryzcLbBjoNY...</consumerKey>
10 <isAdminApproved>false</isAdminApproved>
11 <isConsumerSecretOptional>false</isConsumerSecretOptional>
12 <isIntrospectAllTokens>false</isIntrospectAllTokens>
13 <isSecretRequiredForRefreshToken>true</isSecretRequiredForRefreshToken>
14 <scopes>Full</scopes>
15 <scopes>RefreshToken</scopes>
16 </oauthConfig>
17 <oauthPolicy>
18 <ipRelaxation>ENFORCE</ipRelaxation>
19 <refreshTokenPolicy>infinite</refreshTokenPolicy>
20 </oauthPolicy>
21</ConnectedApp>

組織の ConnectedApp メタデータをリリースまたは取得するために使用される、パッケージマニフェストの例を次に示します。

1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3    <types>
4        <members>PortalTestApp</members>
5        <name>ConnectedApp</name>
6    </types>
7    <version>29.0</version>
8</Package>

使用方法

メタデータ API を使用して SAML が有効な接続アプリケーションを作成し、サービスプロバイダに [Idp-init のログイン URL] を設定する必要がある場合、次の 2 つのオプションがあります。

app パラメータにサービスプロバイダアプリケーション ID を次の形式で使用できます。この値は、Salesforce ユーザインターフェースに表示されます。[設定] から、[クイック検索] ボックスに「接続アプリケーション」と入力し、[接続アプリケーション] を選択してから、接続アプリケーションの名前をクリックして、その詳細ページを表示します。

1https://<Salesforce_base_URL>/idp/login?app=<app_id>

または、メタデータ API のみを使用して接続アプリケーションを設定する場合、サービスプロバイダアプリケーションの apiName パラメータを次の形式で使用できます。apiName パラメータは、メタデータ型から継承された fullName です。

1https://<Salesforce_base_URL>/idp/login?apiName=<fullName>

マニフェストファイル内のワイルドカードのサポート

このメタデータ型では、package.xml マニフェストファイル内のワイルドカード文字 * (アスタリスク) がサポートされます。マニフェストファイルの使用についての詳細は、「zip ファイルを使用したメタデータのリリースと取得」を参照してください。