public interface IgniteSecurity
The differences between IgniteSecurity and GridSecurityProcessor are:
IgniteSecurity allows to define a current security context by
withContext(SecurityContext) or withContext(UUID) methods.
IgniteSecurity doesn't require to pass SecurityContext to authorize operations.
IgniteSecurity doesn't extend GridProcessor interface
sequentially it doesn't have any methods of the lifecycle of GridProcessor.
OperationSecurityContext withContext(SecurityContext secCtx)
OperationSecurityContext. All calls of methods authorize(String, SecurityPermission) or authorize(SecurityPermission) will be processed into the context of passed SecurityContext until
holder OperationSecurityContext will be closed.secCtx - Security Context.OperationSecurityContext withContext(UUID nodeId)
OperationSecurityContext. All calls of methods authorize(String, SecurityPermission) or authorize(SecurityPermission) will be processed into the context of SecurityContext that is owned by
the node with given nodeId until holder OperationSecurityContext will be closed.nodeId - Node id.boolean isDefaultContext()
True if current thread executed in default security context.SecurityContext securityContext()
OperationSecurityContext.SecurityContext authenticateNode(ClusterNode node, SecurityCredentials cred) throws IgniteCheckedException
GridSecurityProcessor.authenticateNode(org.apache.ignite.cluster.ClusterNode,
org.apache.ignite.plugin.security.SecurityCredentials)IgniteCheckedExceptionboolean isGlobalNodeAuthentication()
GridSecurityProcessor.isGlobalNodeAuthentication()SecurityContext authenticate(AuthenticationContext ctx) throws IgniteCheckedException
GridSecurityProcessor.authenticate(AuthenticationContext)IgniteCheckedExceptionCollection<SecuritySubject> authenticatedSubjects() throws IgniteCheckedException
GridSecurityProcessor.authenticatedSubjects()IgniteCheckedExceptionSecuritySubject authenticatedSubject(UUID subjId) throws IgniteCheckedException
GridSecurityProcessor.authenticatedSubject(UUID)IgniteCheckedExceptionvoid onSessionExpired(UUID subjId)
GridSecurityProcessor.onSessionExpired(UUID)void authorize(String name, SecurityPermission perm) throws SecurityException
name - Cache name or task class name.perm - Permission to authorize.SecurityException - If security check failed.default void authorize(SecurityPermission perm) throws SecurityException
perm - Permission to authorize.SecurityException - If security check failed.IgniteSandbox sandbox()
boolean enabled()
void createUser(String login, char[] pwd) throws IgniteCheckedException
login - Login of the user to be created.pwd - User password.IgniteCheckedException - If error occurred.void alterUser(String login, char[] pwd) throws IgniteCheckedException
login - Login of the user which password should be altered.pwd - User password to alter.IgniteCheckedException - If error occurred.void dropUser(String login) throws IgniteCheckedException
login - Login of the user to be dropped.IgniteCheckedException - If error occurred.void onLocalJoin()
boolean isSystemType(Class<?> cls)
cls - The class for which the check is to be performed.GridSecurityProcessor.isSystemType(Class)
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.15.0 Release Date : April 25 2023