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

PermissionSet

ユーザのプロファイルを変更または再割り当てせずに 1 名以上のユーザに追加のアクセス権を付与できるようにするために使用する権限のセットを表します。アクセスの許可に権限セットを使用できますが、アクセスの拒否には使用できません。

Metadata メタデータ型を拡張し、その fullName 項目を継承します。

API バージョン 40.0 以降、権限セットメタデータを取得またはリリースすると、メタデータ API で公開されている、権限セットのすべてのコンテンツが含まれます。メタデータには、権限セットに関連付けられた Apex、CRUD などが含まれます。

API バージョン 39.0 以前では、権限セットメタデータを取得またはリリースすると、権限セットに割り当てられたアプリケーション権限とシステム権限のみが返されます。連結メタデータ (Apex、CRUD など) が含まれるのは、関連するコンポーネントのメタデータもパッケージ定義に含まれる場合のみです。

重要

API バージョン 29.0 以降では、プロファイルと権限セットの次の管理コンポーネントのアクセス設定を取得およびリリースできます。
  • Apex クラス
  • アプリケーション
  • カスタム項目権限
  • カスタムオブジェクト権限
  • カスタムタブの設定
  • 外部データソース
  • レコードタイプ
  • Visualforce ページ
API バージョン 51.0 以降では、ログインフローのアクセス設定を取得およびリリースできます。

詳細は、package.xml マニフェストファイルのサンプル」の「管理コンポーネントへのアクセス」を参照してください。

宣言的なメタデータファイルのサフィックスおよびディレクトリの場所

権限セットは permissionsets ディレクトリに保存されます。ファイル名は権限セットの API 参照名に一致し、拡張子は .permissionset です。たとえば、User_Management_Perms という名前の権限セットは permissionsets/User_Management_Perms.permissionset に保存されます。

バージョン

権限セットは API バージョン 22.0 以降で使用できます。

特別なアクセスルール

Summer '20 以降、このタイプにアクセスできるのは、次のいずれかの権限を持つユーザのみとなります。
  • 「設定・定義の参照」
  • 「セッション権限セットの有効化の管理」
  • 「権限セットの割り当て」
  • 「プロファイルと権限セットの管理」
指定された権限セット内の標準オブジェクトとカスタムオブジェクトの次の設定、割り当て、および権限を表示するには、「設定・定義を参照する」権限が必要です。
  • クライアント設定
  • 項目権限
  • レイアウトの割り当て
  • オブジェクト権限
  • 権限の連動関係
  • 権限セットのタブ設定
  • 権限セットグループのコンポーネント
  • レコードのタイプ

項目

項目 項目の型 説明
applicationVisibilities PermissionSetApplicationVisibility[] この権限セットに割り当てられているユーザに表示されるアプリケーションを示します。API バージョン 29.0 以降で利用できます。API バージョン 29.0 では、この項目はカスタムアプリケーションのみをサポートします。API バージョン 30.0 以降、この項目は標準アプリケーションとカスタムアプリケーションの両方をサポートします。
classAccesses PermissionSetApexClassAccess[] この権限セットに割り当てられているユーザが実行できるメソッドを持つ最上位の Apex クラスを示します。API バージョン 23.0 以降で利用できます。
customMetadataTypeAccesses PermissionSetCustomMetadataTypeAccess[] この権限セットに割り当てられたユーザに参照アクセス権があるカスタムメタデータ型を示します。API バージョン 47.0 以降で利用できます。
customPermissions PermissionSetCustomPermissions[] この権限セットに割り当てられているユーザが利用可能なカスタム権限を示します。API バージョン 31.0 以降で利用できます。
customSettingAccesses PermissionSetCustomSettingAccesses[] この権限セットに割り当てられたユーザに参照アクセス権があるカスタム設定を示します。API バージョン 47.0 以降で利用できます。
description string 権限セットの説明。最大 255 文字です。
externalDataSourceAccesses PermissionSetExternal DataSourceAccess[] この権限セットに割り当てられているユーザが使用できる、ID 種別 [ユーザ] を持つデータソースを示します。API バージョン 27.0 以降で利用できます。
fieldPermissions PermissionSetFieldPermissions[] この権限セットに割り当てられているユーザがアクセスできる項目、および使用可能なアクセス権の種類 (参照可能または編集可能) を示します。API バージョン 23.0 以降で利用できます。
flowAccesses PermissionSetFlowAccess[] この権限セットに割り当てられているユーザがアクセスできるフローを示します。API バージョン 47.0 以降で利用できます。
hasActivationRequired boolean 権限セットが、関連付けられた有効なセッションを要求するか (true)、否か (false) を示します。API バージョン 37.0 以降で利用できます。
label string 必須。権限セットの表示ラベル。最大 80 文字です。
license string 関連権限セットライセンス、またはこの権限セットに関連付けられているユーザライセンスが含まれます。API バージョン 38.0 以降で利用できます。非推奨で API バージョン 37.0 までしか使用できない userLicense の代わりにこの項目を使用してください。
objectPermissions PermissionSetObjectPermissions[] この権限セットに割り当てられているユーザがアクセスできるオブジェクト、および使用可能なアクセス権の種類 (作成、参照、編集、削除など) を示します。API バージョン 23.0 以降で利用できます。
pageAccesses PermissionSetApexPageAccess[] この権限セットに割り当てられているユーザが実行できる Visualforce ページを示します。API バージョン 23.0 以降で利用できます。
recordTypeVisibilities PermissionSetRecordTypeVisibility[] この権限セットに割り当てられているユーザに表示されるレコードタイプを示します。API バージョン 29.0 以降で利用できます。無効なレコードタイプの場合、この項目は取得またはリリースされません。
tabSettings PermissionSetTabSetting[] この権限セットのタブ表示設定を示します。API バージョン 26.0 以降で利用できます。
userLicense string 非推奨。権限セットのユーザライセンス。ユーザライセンスによって、ユーザがアクセスできる機能の基準が決まります。各ユーザにユーザライセンスが 1 つだけ必要です。API バージョン 37.0 まで使用可能です。API バージョン 38.0 以降では、license を使用します。
userPermissions PermissionSetUserPermission[] アプリケーション権限またはシステム権限 (「API の有効化」など) と、この権限セットで有効化されているかどうかを指定します。API バージョン 28.0 以前では、有効であるか無効であるかに関係なく、この項目ですべてのユーザ権限が取得されます。API バージョン 29.0 以降では、有効なユーザ権限のみが取得されます。API バージョン 40.0 以降では、リリースで権限が指定されてい合い場合、無効になります。

PermissionSetApplicationVisibility

PermissionSetApplicationVisibility は、この権限セットに割り当てられているユーザにアプリケーションが表示されるかどうかを決定します。

項目名 項目の型 説明
application string 必須。アプリケーションの名前。
visible boolean 必須。この権限セットに割り当てられているユーザにこのアプリケーションが表示されるか (true)、否か (false) を示します。

PermissionSetApexClassAccess

PermissionSetApexClassAccess は権限セットに割り当てられているユーザの Apex クラスのアクセス権を表します。

項目 項目の型 説明
apexClass string 必須。Apex クラス名。
enabled boolean 必須。この権限セットに割り当てられているユーザが最上位クラスのメソッドを実行できるか (true)、否か (false) を示します。

PermissionSetCustomMetadataTypeAccess

PermissionSetCustomMetadataTypeAccess は権限セットに割り当てられているユーザのカスタムメタデータ型アクセス権を表します。API バージョン 47.0 以降で利用できます。

項目 項目の型 説明
enabled boolean 必須。このカスタムメタデータ型のレコードが参照可能か (true)、否か (false) を示します。
name string 必須。カスタムメタデータ型名。

PermissionSetCustomPermissions

PermissionSetCustomPermissions は権限セットに割り当てられているユーザのカスタムアクセス権限を表します。取得できるのは有効なカスタム権限のみです。

項目名 項目の型 説明
enabled boolean 必須。カスタム権限が有効化されているか (true)、否か (false) を示します。
name string 必須。カスタム権限名。

PermissionSetCustomSettingAccesses

PermissionSetCustomSettingAccesses は権限セットに割り当てられているユーザのカスタム設定を表します。API バージョン 47.0 以降で利用できます。

項目 項目の型 説明
enabled boolean 必須。このカスタム設定のレコードが参照可能か (true)、否か (false) を示します。
name string 必須。カスタム設定の名前。

PermissionSetExternalDataSourceAccess

PermissionSetExternalDataSourceAccess は、ID 種別 [ユーザ] を持つユーザのデータソースアクセス権を表します。API バージョン 27.0 以降で利用できます。

項目 項目の型 説明
enabled boolean 必須。データソースが有効化されているか (true)、否か (false) を示します。
externalDataSource string 外部データソースの名前。

PermissionSetFieldPermissions

PermissionSetFieldPermissions は権限セットに割り当てられているユーザの項目権限を表します。API バージョン 30.0 以降では、必須項目の権限の取得やリリースはできません。

API バージョン 38.0 以降は、ユーザインターフェースでは変更できない項目の場合は、メタデータ API を使用して、項目権限を変更し、項目を編集可能にすることができます。たとえば、Asset.ProductCode はユーザインターフェースでは変更できませんが、編集可能項目としてリリースできます。

メモ

項目 項目の型 説明
editable boolean 必須。この権限セットに割り当てられているユーザが項目を編集できるか (true)、否か (false) を示します。
field string 必須。項目の API 参照名 (Warehouse__c.Description__c など)。
readable boolean この権限セットに割り当てられているユーザが項目を参照できるか (true)、否か (false) を示します。

PermissionSetFlowAccess

PermissionSetFlowAccess は、権限セットでアクセス権が付与されるフローを表します。API バージョン 47.0 以降で利用できます。

項目 項目の型 説明
enabled boolean 必須。この権限セットに割り当てられているユーザがフローにアクセスできるか (true)、否か (false) を示します。デフォルト値は false です。
flow string 必須。アクセス権が付与されているフローの名前。

PermissionSetObjectPermissions

PermissionSetObjectPermissions は権限セットのオブジェクト権限を表します。権限ごとにこれらの要素の 1 つを使用します。

項目 項目の型 説明
allowCreate boolean 必須。この権限セットに割り当てられているユーザが object 項目で参照されているオブジェクトを作成できるか (true)、否か (false) を示します。
allowDelete boolean 必須。この権限セットに割り当てられているユーザが object 項目で参照されているオブジェクトを削除できるか (true)、否か (false) を示します。
allowEdit boolean 必須。この権限セットに割り当てられているユーザが object 項目で参照されているオブジェクトを編集できるか (true)、否か (false) を示します。
allowRead boolean 必須。この権限セットに割り当てられているユーザが object 項目で参照されているオブジェクトを参照できるか (true)、否か (false) を示します。
modifyAllRecords boolean 必須。オブジェクトの共有設定に関係なく、この権限セットに割り当てられているユーザが object 項目で参照されているオブジェクトを参照、編集、または削除できるか (true)、否か (false) を示します。これには非公開レコード (親オブジェクトを持たないレコード) を含みます。これは「すべてのデータの編集」ユーザ権限と似ていますが、個別のオブジェクトレベルに限定されます。
object string 必須。オブジェクトの API 参照名 (Warehouse__c など)。
viewAllRecords boolean 必須。オブジェクトの共有設定に関係なく、この権限セットに割り当てられているユーザが object 項目で参照されているオブジェクトを参照できるか (true)、否か (false) を示します。これには非公開レコード (親オブジェクトを持たないレコード) を含みます。viewAllRecords 項目は、「すべてのデータの参照」ユーザ権限と似ていますが、個別のオブジェクトレベルに限定されます。

PermissionSetApexPageAccess

PermissionSetApexPageAccess は権限セットに割り当てられているユーザの Visualforce ページのアクセス権を表します。

項目 項目の型 説明
apexPage string 必須。Visualforce ページ名。
enabled boolean 必須。この権限セットに割り当てられているユーザが Visualforce ページを実行できるか (true)、否か (false) を示します。

PermissionSetRecordTypeVisibility

PermissionSetRecordTypeVisibility は、この権限セットのレコードタイプが表示されるかどうかを表します。

項目 項目の型 説明
recordType string 必須。Account.MyRecordType などのレコードタイプ名。
visible boolean 必須。レコードタイプがこの権限セットに割り当てられているユーザに表示されるか (true)、否か (false) を示します。

PermissionSetTabSetting

PermissionSetTabSetting は権限セットのタブ設定を表します。

項目 項目の型 説明
tab string 必須。タブ名。
visibility PermissionSetTabVisibility (string 型の列挙) 必須。タブの表示設定を示します。有効な値は、次のとおりです。
  • Available — このタブは [すべてのタブ] ページで利用できます。各ユーザは、どのアプリケーションでもタブが表示されるように表示をカスタマイズできます。
  • None — このタブは [すべてのタブ] ページでは利用���きず、どのアプリケーションにも表示されません。
  • Visible — タブは [すべてのタブ] ページで利用でき、関連付けられているアプリケーションの表示タブに表示されます。各ユーザは、表示をカスタマイズしてタブを非表示にしたり、その他のアプリケーションで表示したりできます。

PermissionSetUserPermission

API バージョン 28.0 以前では、PermissionSetUserPermission は権限セットのアプリケーション権限またはシステム権限を表します。API バージョン 29.0 以降では、有効なユーザ権限のみが取得されます。権限ごとにこれらの要素の 1 つを使用します。

項目 項目の型 説明
enabled boolean 必須。権限が有効化されるか (true)、無効化されるか (false) を示します。
name string 必須。権限の名前。

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

権限セットを追加または変更するときは、すべての権限を含める必要はありません。含める必要があるのは、追加または変更する権限のみです。

組織の PermissionSet メタデータを取得するために使用される package.xml マニフェストの例を次に示します。権限セットを取得する場合、割り当てられた権限付きの関連コンポーネントも取得します。たとえば、カスタムオブジェクトの objectPermissions および fieldPermissions を取得するには、CustomObject コンポーネントも取得する必要があります。

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

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