CngKey.Open CngKey.Open CngKey.Open CngKey.Open Method

定義

既存のキーを表す CngKey オブジェクトのインスタンスを作成します。Creates an instance of an CngKey object that represents an existing key.

オーバーロード

Open(String) Open(String) Open(String) Open(String)

既存の名前付きキーを表す CngKey オブジェクトのインスタンスを作成します。Creates an instance of an CngKey object that represents an existing named key.

Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions)

既存のキーを識別するハンドルを使用して、CngKey オブジェクトのインスタンスを作成します。Creates an instance of an CngKey object by using a handle to an existing key.

Open(String, CngProvider) Open(String, CngProvider) Open(String, CngProvider) Open(String, CngProvider)

既存の名前付きキーを表す CngKey オブジェクトのインスタンスを、指定した KSP を使用して作成します。Creates an instance of an CngKey object that represents an existing named key, using the specified key storage provider (KSP).

Open(String, CngProvider, CngKeyOpenOptions) Open(String, CngProvider, CngKeyOpenOptions) Open(String, CngProvider, CngKeyOpenOptions) Open(String, CngProvider, CngKeyOpenOptions)

既存の名前付きキーを表す CngKey オブジェクトのインスタンスを、指定した KSP およびキーを開くオプションを使用して作成します。Creates an instance of an CngKey object that represents an existing named key, using the specified key storage provider (KSP) and key open options.

Open(String) Open(String) Open(String) Open(String)

既存の名前付きキーを表す CngKey オブジェクトのインスタンスを作成します。Creates an instance of an CngKey object that represents an existing named key.

public:
 static System::Security::Cryptography::CngKey ^ Open(System::String ^ keyName);
public static System.Security.Cryptography.CngKey Open (string keyName);
static member Open : string -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyName As String) As CngKey

パラメーター

keyName
String String String String

キー名。The name of the key.

戻り値

既存のキー。An existing key.

例外

CNG はこのシステムではサポートされていません。Cryptography Next Generation (CNG) is not supported on this system.

上記以外のすべてのエラー。All other errors.

注釈

このオーバー ロードは、次の既定値を使用します。This overload uses the following defaults:

セキュリティ

KeyContainerPermissionAccessEntryCollection
キー コンテナーを開くアクセス許可。for permission to open a key container. 要求値:Demandします。Demand value: Demand. 関連付けられた列挙体。 OpenAssociated enumeration: Open

Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions) Open(SafeNCryptKeyHandle, CngKeyHandleOpenOptions)

既存のキーを識別するハンドルを使用して、CngKey オブジェクトのインスタンスを作成します。Creates an instance of an CngKey object by using a handle to an existing key.

public:
 static System::Security::Cryptography::CngKey ^ Open(Microsoft::Win32::SafeHandles::SafeNCryptKeyHandle ^ keyHandle, System::Security::Cryptography::CngKeyHandleOpenOptions keyHandleOpenOptions);
[System.Security.SecurityCritical]
public static System.Security.Cryptography.CngKey Open (Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle keyHandle, System.Security.Cryptography.CngKeyHandleOpenOptions keyHandleOpenOptions);
static member Open : Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle * System.Security.Cryptography.CngKeyHandleOpenOptions -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyHandle As SafeNCryptKeyHandle, keyHandleOpenOptions As CngKeyHandleOpenOptions) As CngKey

パラメーター

keyHandle
SafeNCryptKeyHandle SafeNCryptKeyHandle SafeNCryptKeyHandle SafeNCryptKeyHandle

既存のキーを識別するハンドル。A handle to an existing key.

keyHandleOpenOptions
CngKeyHandleOpenOptions CngKeyHandleOpenOptions CngKeyHandleOpenOptions CngKeyHandleOpenOptions

keyHandle が短期キーを表しているのか、名前付きキーを表しているのかを示す列挙値の 1 つ。One of the enumeration values that indicates whether keyHandle represents an ephemeral key or a named key.

戻り値

既存のキー。An existing key.

例外

keyHandle が無効か、形式が正しくないか、または既に閉じられています。keyHandle is invalid or malformed, or it is already closed. この例外は、キーが CLR で作成された短期キーであり、EphemeralKey 値が指定されていない場合にもスローされます。This exception is also thrown if the key is an ephemeral key that is created by the common language runtime (CLR), but the EphemeralKey value is not specified.

CNG はこのシステムではサポートされていません。Cryptography Next Generation (CNG) is not supported on this system.

上記以外のすべてのエラー。All other errors.

注釈

このオーバー ロードは、高度なユーザーを使用して、CNG クラス プラットフォームに依存している場合でも起動または C++ のマネージ相互運用機能を使用します。This overload enables advanced users to use the CNG classes even if they rely on platform invoke or the managed interop capability of C++. たとえば、NCRYPT_KEY_HANDLE としてキーを返すネイティブ ライブラリがある場合は、このオーバー ロードできるようになります、キーのマネージ ラッパーを作成し、操作に CNG クラスを使用します。For example, if you have a native library that returns the key as an NCRYPT_KEY_HANDLE, this overload lets you create a managed wrapper around the key and use the CNG classes to manipulate it.

そのハンドルを使用して、キーを開くと、キーの一時的な状態を判断することはできず、必要がありますそれを自分で指定します。When you open a key by using its handle, you cannot determine the key's ephemeral state and must specify it yourself. いくつかのプロパティ、CngKeyクラスは、この値が正しいに依存します。Several properties of the CngKey class rely on this value to be correct. そのため、適切なフラグ値を渡すことを確認、Openメソッド。Therefore, make sure that you pass the correct flag value to the Open methods.

セキュリティ

SecurityPermission
アンマネージ コードを呼び出すアクセス許可。for permission to call unmanaged code. 要求値:Demandします。Demand value: Demand. 関連付けられた列挙体。 UnmanagedCodeAssociated enumeration: UnmanagedCode

Open(String, CngProvider) Open(String, CngProvider) Open(String, CngProvider) Open(String, CngProvider)

既存の名前付きキーを表す CngKey オブジェクトのインスタンスを、指定した KSP を使用して作成します。Creates an instance of an CngKey object that represents an existing named key, using the specified key storage provider (KSP).

public:
 static System::Security::Cryptography::CngKey ^ Open(System::String ^ keyName, System::Security::Cryptography::CngProvider ^ provider);
public static System.Security.Cryptography.CngKey Open (string keyName, System.Security.Cryptography.CngProvider provider);
static member Open : string * System.Security.Cryptography.CngProvider -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyName As String, provider As CngProvider) As CngKey

パラメーター

keyName
String String String String

キー名。The name of the key.

provider
CngProvider CngProvider CngProvider CngProvider

キーを格納している KSP。The KSP that contains the key.

戻り値

既存のキー。An existing key.

例外

keyName または providernull です。keyName or provider is null.

CNG はこのシステムではサポートされていません。Cryptography Next Generation (CNG) is not supported on this system.

上記以外のすべてのエラー。All other errors.

注釈

異なり、Open(String)メソッドのオーバー ロードは、このオーバー ロードにより、プロバイダーを指定できます。Unlike the Open(String) method overload, this overload lets you specify the provider. さらに、既定のCngKeyOpenOptions@propertyNoneが作成され、キーにバインドします。In addition, a default CngKeyOpenOptions value of None is created and bound to the key.

セキュリティ

KeyContainerPermissionAccessEntryCollection
キー コンテナーを開くアクセス許可。for permission to open a key container. 要求値:Demandします。Demand value: Demand. 関連付けられた列挙体。 OpenAssociated enumeration: Open

Open(String, CngProvider, CngKeyOpenOptions) Open(String, CngProvider, CngKeyOpenOptions) Open(String, CngProvider, CngKeyOpenOptions) Open(String, CngProvider, CngKeyOpenOptions)

既存の名前付きキーを表す CngKey オブジェクトのインスタンスを、指定した KSP およびキーを開くオプションを使用して作成します。Creates an instance of an CngKey object that represents an existing named key, using the specified key storage provider (KSP) and key open options.

public:
 static System::Security::Cryptography::CngKey ^ Open(System::String ^ keyName, System::Security::Cryptography::CngProvider ^ provider, System::Security::Cryptography::CngKeyOpenOptions openOptions);
[System.Security.SecurityCritical]
public static System.Security.Cryptography.CngKey Open (string keyName, System.Security.Cryptography.CngProvider provider, System.Security.Cryptography.CngKeyOpenOptions openOptions);
static member Open : string * System.Security.Cryptography.CngProvider * System.Security.Cryptography.CngKeyOpenOptions -> System.Security.Cryptography.CngKey
Public Shared Function Open (keyName As String, provider As CngProvider, openOptions As CngKeyOpenOptions) As CngKey

パラメーター

keyName
String String String String

キー名。The name of the key.

provider
CngProvider CngProvider CngProvider CngProvider

キーを格納している KSP。The KSP that contains the key.

openOptions
CngKeyOpenOptions CngKeyOpenOptions CngKeyOpenOptions CngKeyOpenOptions

キーを開くためのオプションを示す列挙値のビットごとの組み合わせ。これには、キーが開かれる場所 (コンピューターまたはユーザー ストレージ) や、UI プロンプトを非表示にするかどうかなどが含まれます。A bitwise combination of the enumeration values that specify options for opening the key, such as where the key is opened from (machine or user storage) and whether to suppress UI prompting.

戻り値

既存のキー。An existing key.

例外

keyName または providernull です。keyName or provider is null.

CNG はこのシステムではサポートされていません。Cryptography Next Generation (CNG) is not supported on this system.

上記以外のすべてのエラー。All other errors.

注釈

異なり、Open(String)メソッドのオーバー ロードは、このオーバー ロードにより、プロバイダーとキーの両方のオプションを開くかを指定できます。Unlike the Open(String) method overload, this overload lets you specify both the provider and the key open options.

セキュリティ

KeyContainerPermissionAccessEntryCollection
キー コンテナーを開くアクセス許可。for permission to open a key container. 要求値:Demandします。Demand value: Demand. 関連付けられた列挙体。 OpenAssociated enumeration: Open

適用対象