Package com.microsoft.sqlserver.jdbc
Class SQLServerVSMEnclaveProvider
- java.lang.Object
-
- com.microsoft.sqlserver.jdbc.SQLServerVSMEnclaveProvider
-
- All Implemented Interfaces:
ISQLServerEnclaveProvider
public class SQLServerVSMEnclaveProvider extends 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ArrayList<byte[]>createEnclaveSession(SQLServerConnection connection, String userSql, String preparedTypeDefinitions, com.microsoft.sqlserver.jdbc.Parameter[] params, ArrayList<String> parameterNames)Creates the enclave sessionvoidgetAttestationParameters(boolean createNewParameters, String url)Returns the attestation parametersbyte[]getEnclavePackage(String userSQL, ArrayList<byte[]> enclaveCEKs)com.microsoft.sqlserver.jdbc.EnclaveSessiongetEnclaveSession()Returns the enclave sessionvoidinvalidateEnclaveSession()Invalidates an enclave session
-
-
-
Method Detail
-
getAttestationParameters
public void getAttestationParameters(boolean createNewParameters, 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 ArrayList<byte[]> createEnclaveSession(SQLServerConnection connection, String userSql, String preparedTypeDefinitions, com.microsoft.sqlserver.jdbc.Parameter[] params, ArrayList<String> parameterNames) throws SQLServerException
Description 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(String userSQL, ArrayList<byte[]> enclaveCEKs) throws SQLServerException
- Specified by:
getEnclavePackagein interfaceISQLServerEnclaveProvider- Throws:
SQLServerException
-
-