Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * This is implementation of {@link GridSecurityProcessor} which handles cluster security
- */
- public class SecurityProcessor extends GridProcessorAdapter implements GridSecurityProcessor {
- private IgniteConfiguration config;
- private SecurityPluginConfiguration securityPluginConfiguration;
- /**
- * @param ctx Kernal context.
- */
- protected SecurityProcessor(GridKernalContext ctx) {
- super(ctx);
- config = ctx.config();
- PluginConfiguration[] pluginConfigurations = this.config.getPluginConfigurations();
- if (pluginConfigurations != null) {
- for (PluginConfiguration pluginConfiguration : pluginConfigurations) {
- if (pluginConfiguration instanceof SecurityPluginConfiguration) {
- securityPluginConfiguration = (SecurityPluginConfiguration) pluginConfiguration;
- }
- }
- }
- }
- /**
- * @param node
- * @param cred
- * @return
- * @throws IgniteCheckedException
- */
- public SecurityContext authenticateNode(ClusterNode node, SecurityCredentials cred) throws IgniteCheckedException {
- SecurityCredentials userSecurityCredentials;
- if (securityPluginConfiguration != null) {
- if ((userSecurityCredentials = securityPluginConfiguration.getSecurityCredentials()) != null) {
- return userSecurityCredentials.equals(cred) ? new SecurityContextImpl() : null;
- }
- if (cred == null && userSecurityCredentials == null) {
- return new SecurityContextImpl();
- }
- }
- if (cred == null)
- return new SecurityContextImpl();
- return null;
- }
- public boolean isGlobalNodeAuthentication() {
- return false;
- }
- public SecurityContext authenticate(AuthenticationContext ctx) throws IgniteCheckedException {
- return new SecurityContextImpl(ctx);
- }
- public Collection<SecuritySubject> authenticatedSubjects() throws IgniteCheckedException {
- return Arrays.asList(new SecuritySubjectImpl());
- }
- public SecuritySubject authenticatedSubject(UUID subjId) throws IgniteCheckedException {
- return new SecuritySubjectImpl();
- }
- public void authorize(String name, SecurityPermission perm, @Nullable SecurityContext securityCtx) throws SecurityException {
- //TODO - Here we can check permissions for given cache operation
- }
- public void onSessionExpired(UUID subjId) {
- }
- public boolean enabled() {
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement