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

CustomPermission

メールの送信など、カスタムプロセスまたはアプリケーションへのアクセスを制御するために作成された権限を表します。このオブジェクトは、API バージョン 31.0 以降で使用できます。

サポートされているコール

describeSObjects()query()retrieve()

項目

項目名 詳細
Description
textarea
プロパティ
Filter、Group、Nillable、Sort
説明
カスタム権限の説明。最大 255 文字です。
DeveloperName
string
プロパティ
Filter、Group、Sort
説明
API のカスタム権限の一意の名前。この名前は、アンダースコアと英数字のみを含み、組織内で一意の名前にする必要があります。最初は文字であること、空白は使用しない、最後にアンダースコアを使用しない、2 つ続けてアンダースコアを使用しないという制約があります。表示ラベルは、ユーザインターフェースの [名前] に対応します。最大 80 文字です。

大規模データセットを作成する場合、必ず各レコードの一意の DeveloperName を指定してください。DeveloperName が指定されていないと、Salesforce で各レコードの DeveloperName を生成している間にパフォーマンスが低下する可能性があります。

メモ

Language
picklist
プロパティ
Filter、Group、Restricted picklist、Sort
説明
カスタム権限の言語。有効な値は、次のとおりです。
  • 中国語 (簡体字): zh_CN
  • 中国語 (繁体字): zh_TW
  • デンマーク語: da
  • オランダ語: nl_NL
  • 英語: en_US
  • フィンランド語: fi
  • フランス語: fr
  • ドイツ語: de
  • イタリア語: it
  • 日本語: ja
  • 韓国語: ko
  • ノルウェー語: no
  • ポルトガル語 (ブラジル): pt_BR
  • ロシア語: ru
  • スペイン語: es
  • スペイン語 (メキシコ): es_MX
  • スウェーデン語: sv
  • タイ語: th
MasterLabel
string
プロパティ
Filter、Group、Sort
説明
カスタム権限の表示ラベル。ユーザインターフェースの [表示ラベル] に対応します。最大 80 文字です。
NamespacePrefix
string
プロパティ
Filter、Group、Nillable、Sort
説明
このオブジェクトと関連付けられた名前空間プレフィックス。管理パッケージを作成する Developer Edition 組織には、一意の名前空間プレフィックスがあります。最大 15 文字です。namespacePrefix__componentName 表記を使用して、管理パッケージのコンポーネントを参照できます。
名前空間プレフィックスには、次のいずれかの値があります。
  • Developer Edition 組織では、名前空間プレフィックスは、サポートしているすべてのオブジェクトに組織の名前空間プレフィックスを設定します。オブジェクトがインストールされた管理パッケージ内にある場合には例外があります。その場合、オブジェクトにはインストールされた管理パッケージの名前空間プレフィックスが付きます。この項目の値は、パッケージ開発者の Developer Edition 組織の名前空間プレフィックスです。
  • Developer Edition 組織でない場合、NamespacePrefix は、インストールされた管理パッケージの一部であるオブジェクトに設定されます。その他すべてのオブジェクトには名前空間プレフィックスはありません。

使用方法

CustomPermission オブジェクトを使用して、カスタム権限へのユーザアクセスを決定します。

たとえば、Button1 の権限が有効になっているすべての権限セットをクエリする場合、次のようになります。
1SELECT Id, DeveloperName,
2(select Id, Parent.Name, Parent.Profile.Name from SetupEntityAccessItems)
3FROM CustomPermission
4WHERE DeveloperName = 'Button1'
カスタム権限のあるすべての権限セットおよびプロファイルをクエリする場合、次のようになります。
1SELECT Assignee.Name, PermissionSet.Id,
2PermissionSet.Profile.Name,
3PermissionSet.isOwnedByProfile,
4PermissionSet.Label
5FROM PermissionSetAssignment
6WHERE PermissionSetId
7IN (SELECT ParentId
8   FROM SetupEntityAccess
9   WHERE SetupEntityType =
10'CustomPermission')
カスタム権限のあるすべての SetupEntityAccess 行をクエリする場合、次のようになります。
1SELECT Id,ParentId,Parent.Name, SetupEntityId
2FROM SetupEntityAccess
3WHERE SetupEntityType='CustomPermission'
4AND ParentId
5IN (SELECT Id
6   FROM PermissionSet
7   WHERE isOwnedByProfile = false)