Package com.microsoft.sqlserver.jdbc
Class SQLServerVSMEnclaveProvider
java.lang.Object
com.microsoft.sqlserver.jdbc.SQLServerVSMEnclaveProvider
- All Implemented Interfaces:
ISQLServerEnclaveProvider
public class SQLServerVSMEnclaveProvider extends java.lang.Object implements ISQLServerEnclaveProvider
Provides the implementation of the VSM Enclave Provider. The enclave provider encapsulates the client-side
implementation details of the enclave attestation protocol.
-
Constructor Summary
Constructors Constructor Description SQLServerVSMEnclaveProvider() -
Method Summary
Modifier and Type Method Description java.util.ArrayList<byte[]>createEnclaveSession(SQLServerConnection connection, java.lang.String userSql, java.lang.String preparedTypeDefinitions, com.microsoft.sqlserver.jdbc.Parameter[] params, java.util.ArrayList<java.lang.String> parameterNames)Creates the enclave sessionvoidgetAttestationParameters(boolean createNewParameters, java.lang.String url)Returns the attestation parametersbyte[]getEnclavePackage(java.lang.String userSQL, java.util.ArrayList<byte[]> enclaveCEKs)com.microsoft.sqlserver.jdbc.EnclaveSessiongetEnclaveSession()Returns the enclave sessionvoidinvalidateEnclaveSession()Invalidates an enclave session
-
Constructor Details
-
SQLServerVSMEnclaveProvider
public SQLServerVSMEnclaveProvider()
-
-
Method Details
-
getAttestationParameters
public void getAttestationParameters(boolean createNewParameters, java.lang.String url) throws SQLServerExceptionDescription copied from interface:ISQLServerEnclaveProviderReturns the attestation parameters- Specified by:
getAttestationParametersin interfaceISQLServerEnclaveProvider- Parameters:
createNewParameters- indicates whether to create new parametersurl- attestation url- Throws:
SQLServerException- when an error occurs.
-
createEnclaveSession
public java.util.ArrayList<byte[]> createEnclaveSession(SQLServerConnection connection, java.lang.String userSql, java.lang.String preparedTypeDefinitions, com.microsoft.sqlserver.jdbc.Parameter[] params, java.util.ArrayList<java.lang.String> parameterNames) throws SQLServerExceptionDescription copied from interface:ISQLServerEnclaveProviderCreates the enclave session- Specified by:
createEnclaveSessionin interfaceISQLServerEnclaveProvider- Parameters:
connection- connectionuserSql- user sqlpreparedTypeDefinitions- preparedTypeDefinitionsparams- paramsparameterNames- parameterNames- Returns:
- list of enclave requested CEKs
- Throws:
SQLServerException- when an error occurs.
-
invalidateEnclaveSession
public void invalidateEnclaveSession()Description copied from interface:ISQLServerEnclaveProviderInvalidates an enclave session- Specified by:
invalidateEnclaveSessionin interfaceISQLServerEnclaveProvider
-
getEnclaveSession
public com.microsoft.sqlserver.jdbc.EnclaveSession getEnclaveSession()Description copied from interface:ISQLServerEnclaveProviderReturns the enclave session- Specified by:
getEnclaveSessionin interfaceISQLServerEnclaveProvider- Returns:
- the enclave session
-
getEnclavePackage
public byte[] getEnclavePackage(java.lang.String userSQL, java.util.ArrayList<byte[]> enclaveCEKs) throws SQLServerException- Specified by:
getEnclavePackagein interfaceISQLServerEnclaveProvider- Throws:
SQLServerException
-