SqlColumnEncryptionEnclaveProvider.CreateEnclaveSession Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
When overridden in a derived class, performs enclave attestation, generates a symmetric key for the session, creates a an enclave session and stores the session information in the cache.
public:
abstract void CreateEnclaveSession(cli::array <System::Byte> ^ enclaveAttestationInfo, System::Security::Cryptography::ECDiffieHellmanCng ^ clientDiffieHellmanKey, System::String ^ attestationUrl, System::String ^ servername, [Runtime::InteropServices::Out] System::Data::SqlClient::SqlEnclaveSession ^ % sqlEnclaveSession, [Runtime::InteropServices::Out] long % counter);
public abstract void CreateEnclaveSession (byte[] enclaveAttestationInfo, System.Security.Cryptography.ECDiffieHellmanCng clientDiffieHellmanKey, string attestationUrl, string servername, out System.Data.SqlClient.SqlEnclaveSession sqlEnclaveSession, out long counter);
abstract member CreateEnclaveSession : byte[] * System.Security.Cryptography.ECDiffieHellmanCng * string * string * SqlEnclaveSession * int64 -> unit
Public MustOverride Sub CreateEnclaveSession (enclaveAttestationInfo As Byte(), clientDiffieHellmanKey As ECDiffieHellmanCng, attestationUrl As String, servername As String, ByRef sqlEnclaveSession As SqlEnclaveSession, ByRef counter As Long)
Parameters
- enclaveAttestationInfo
- Byte[]
The information the provider uses to attest the enclave and generate a symmetric key for the session. The format of this information is specific to the enclave attestation protocol.
- clientDiffieHellmanKey
- ECDiffieHellmanCng
A Diffie-Hellman algorithm object that encapsulates a client-side key pair.
- attestationUrl
- String
The endpoint of an attestation service for attesting the enclave.
- servername
- String
The name of the SQL Server instance containing the enclave.
- sqlEnclaveSession
- SqlEnclaveSession
The requested enclave session or null
if the provider doesn't implement session caching.
- counter
- Int64
A counter that the enclave provider is expected to increment each time SqlClient retrieves the session from the cache. The purpose of this field is to prevent replay attacks.