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 sessionvoid
getAttestationParameters(boolean createNewParameters, String url)
Returns the attestation parametersbyte[]
getEnclavePackage(String userSQL, ArrayList<byte[]> enclaveCEKs)
com.microsoft.sqlserver.jdbc.EnclaveSession
getEnclaveSession()
Returns the enclave sessionvoid
invalidateEnclaveSession()
Invalidates an enclave session
-
-
-
Method Detail
-
getAttestationParameters
public void getAttestationParameters(boolean createNewParameters, String url) throws SQLServerException
Description copied from interface:ISQLServerEnclaveProvider
Returns the attestation parameters- Specified by:
getAttestationParameters
in 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:ISQLServerEnclaveProvider
Creates the enclave session- Specified by:
createEnclaveSession
in 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:ISQLServerEnclaveProvider
Invalidates an enclave session- Specified by:
invalidateEnclaveSession
in interfaceISQLServerEnclaveProvider
-
getEnclaveSession
public com.microsoft.sqlserver.jdbc.EnclaveSession getEnclaveSession()
Description copied from interface:ISQLServerEnclaveProvider
Returns the enclave session- Specified by:
getEnclaveSession
in interfaceISQLServerEnclaveProvider
- Returns:
- the enclave session
-
getEnclavePackage
public byte[] getEnclavePackage(String userSQL, ArrayList<byte[]> enclaveCEKs) throws SQLServerException
- Specified by:
getEnclavePackage
in interfaceISQLServerEnclaveProvider
- Throws:
SQLServerException
-
-