KeyContainerPermissionFlags 列挙型


キー コンテナーへの許可されているアクセス権の種類を指定します。Specifies the type of key container access allowed.

この列挙型には FlagsAttribute 属性があり、メンバー値ではビットごとの組み合わせを使用できます。

public enum class KeyContainerPermissionFlags
public enum KeyContainerPermissionFlags
type KeyContainerPermissionFlags = 
Public Enum KeyContainerPermissionFlags


AllFlags 13111

キー コンテナーの作成/復号化/削除/オープン、キーのエクスポートとインポート、キーを使用してファイルへ署名、およびキー コンテナーのアクセス制御リストの表示と変更を行います。Create, decrypt, delete, and open a key container; export and import a key; sign files using a key; and view and change the access control list for a key container.

ChangeAcl 8192

キー コンテナーのアクセス制御リスト (ACL: Access Control List) を変更します。Change the access control list (ACL) for a key container.

Create 1

キー コンテナーを作成します。Create a key container.

キー コンテナーを作成すると、ディスク上にファイルも作成されます。Creating a key container also creates a file on disk. 作成されたキー コンテナーは、使用されなくなったときに削除されるという点が非常に重要です。It is very important that any key container that is created is removed when it is no longer in use.

Decrypt 512

キー コンテナーを復号化します。Decrypt a key container.

復号化には秘密キーが使われるため、これは特権を必要とする操作となります。Decryption is a privileged operation because it uses the private key.

Delete 4

キー コンテナーを削除します。Delete a key container.

キー コンテナーの削除はサービス拒否攻撃につながる可能性があります。そのキーを使って暗号化または署名されたファイルを使用できなくなるためです。Deleting a key container can constitute a denial of service attack because it prevents the use of files encrypted or signed with the key. そのため、削除は特権を必要とする操作となります。Therefore, deletion is a privileged operation.

Export 32

キー コンテナーからキーをエクスポートします。Export a key from a key container.

キーをエクスポートする機能は、そのキーの排他性を損なうため、有害な可能性があります。The ability to export a key is potentially harmful because it removes the exclusivity of the key.

Import 16

キーをキー コンテナーにインポートします。Import a key into a key container.

キーをインポートする機能は、コンテナーを削除する機能と同様の危険性を持つ可能性があります。名前付きのキー コンテナーにキーをインポートすると、既存のキーが置き換えられるためです。The ability to import a key can be as harmful as the ability to delete a container because importing a key into a named key container replaces the existing key.

NoFlags 0

キー コンテナーにアクセスできません。No access to a key container.

Open 2

キー コンテナーを開いて、公開キーを使用します。Open a key container and use the public key.

Open を使うと、秘密キーを使ってファイルを署名または復号化する権限は付与されませんが、ユーザーはファイルの署名の検証およびファイルの暗号化を行えるようになります。 Open does not give permission to sign or decrypt files using the private key, but it does allow a user to verify file signatures and to encrypt files. キーの所有者のみが秘密キーを使ってこれらのファイルを復号化できます。Only the owner of the key is able to decrypt these files using the private key.

Sign 256

キーを使用してファイルに署名します。Sign a file using a key.

ファイルに署名する機能は有害な可能性があります。あるユーザーが別のユーザーのキーを使ってファイルに署名できるようになるためです。The ability to sign a file is potentially harmful because it can allow a user to sign a file using another user's key.

ViewAcl 4096

キー コンテナーのアクセス制御リスト (ACL) を表示します。View the access control list (ACL) for a key container.

次の例は、KeyContainerPermissionFlags 列挙型の使用方法を示しています。The following example shows the use of the KeyContainerPermissionFlags enumeration.

// Create a KeyContainerPermission with the right to open the key container.
KeyContainerPermission ^ keyContainerPerm = gcnew KeyContainerPermission( KeyContainerPermissionFlags::Open );

// Create a KeyContainerPermission with the right 
// to open the key container.
KeyContainerPermission keyContainerPerm = new
' Create a KeyContainerPermission with the right to open the key container.
Dim keyContainerPerm As New KeyContainerPermission(KeyContainerPermissionFlags.Open)


この列挙体は、KeyContainerPermissionAccessEntry クラスのメンバーによって使用されます。This enumeration is used by members of the KeyContainerPermissionAccessEntry class.


これらのフラグの多くは、強力な効果を持つことができ、信頼性の高いコードにのみ付与する必要があります。Many of these flags can have powerful effects and should be granted only to highly trusted code.

最も強力なフラグは、CreateDeleteImportExportSignDecryptAllFlagsです。The most powerful flags are Create, Delete, Import, Export, Sign, Decrypt, and AllFlags. これらのフラグの使用によって生じる可能性のある特定の脅威については、メンバーの説明を参照してください。For specific threats that the use of these flags can present, see the member descriptions.