Skip to content

Commit

Permalink
#ignite-189: move GridSecuritySubjectAdapter to org.gridgain.grid.aut…
Browse files Browse the repository at this point in the history
…hentication.
  • Loading branch information
ivasilinets committed Feb 13, 2015
1 parent 85c5b69 commit d169d96
Show file tree
Hide file tree
Showing 6 changed files with 131 additions and 145 deletions.

This file was deleted.

Expand Up @@ -22,7 +22,9 @@
import org.apache.ignite.internal.*; import org.apache.ignite.internal.*;
import org.apache.ignite.internal.processors.*; import org.apache.ignite.internal.processors.*;
import org.apache.ignite.internal.processors.security.*; import org.apache.ignite.internal.processors.security.*;
import org.apache.ignite.internal.util.tostring.*;
import org.apache.ignite.internal.util.typedef.*; import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.plugin.security.*; import org.apache.ignite.plugin.security.*;
import org.jetbrains.annotations.*; import org.jetbrains.annotations.*;


Expand Down Expand Up @@ -121,4 +123,96 @@ public GridOsSecurityProcessor(GridKernalContext ctx) {
@Override public boolean enabled() { @Override public boolean enabled() {
return false; return false;
} }

/**
* Authenticated security subject.
*/
private class GridSecuritySubjectAdapter implements GridSecuritySubject {
/** */
private static final long serialVersionUID = 0L;

/** Subject ID. */
private UUID id;

/** Subject type. */
private GridSecuritySubjectType subjType;

/** Address. */
private InetSocketAddress addr;

/** Permissions assigned to a subject. */
private GridSecurityPermissionSet permissions;

/** Login. */
@GridToStringInclude
private Object login;

/**
* @param subjType Subject type.
* @param id Subject ID.
*/
public GridSecuritySubjectAdapter(GridSecuritySubjectType subjType, UUID id) {
this.subjType = subjType;
this.id = id;
}

/**
* @return Subject ID.
*/
@Override public UUID id() {
return id;
}

/**
* @return Subject type.
*/
@Override public GridSecuritySubjectType type() {
return subjType;
}

/**
* @return Subject address.
*/
@Override public InetSocketAddress address() {
return addr;
}

/**
* @param addr Subject address.
*/
public void address(InetSocketAddress addr) {
this.addr = addr;
}

/**
* @return Security permissions.
*/
@Override public GridSecurityPermissionSet permissions() {
return permissions;
}

/** {@inheritDoc} */
@Override public Object login() {
return login;
}

/**
* @param login Login.
*/
public void login(Object login) {
this.login = login;
}

/**
* @param permissions Permissions.
*/
public void permissions(GridSecurityPermissionSet permissions) {
this.permissions = permissions;
}

/** {@inheritDoc} */
public String toString() {
return S.toString(GridSecuritySubjectAdapter.class, this);
}
}
} }
Expand Up @@ -279,7 +279,6 @@ org.apache.ignite.internal.managers.loadbalancer.GridLoadBalancerManager$1
org.apache.ignite.internal.managers.security.GridAllowAllPermissionSet org.apache.ignite.internal.managers.security.GridAllowAllPermissionSet
org.apache.ignite.internal.processors.security.GridSecurityContext org.apache.ignite.internal.processors.security.GridSecurityContext
org.gridgain.grid.kernal.processors.security.GridSecurityImpl org.gridgain.grid.kernal.processors.security.GridSecurityImpl
org.apache.ignite.internal.processors.security.GridSecuritySubjectAdapter
org.apache.ignite.internal.processors.affinity.GridAffinityAssignment org.apache.ignite.internal.processors.affinity.GridAffinityAssignment
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentCache$AffinityReadyFuture
org.apache.ignite.internal.processors.affinity.GridAffinityMessage org.apache.ignite.internal.processors.affinity.GridAffinityMessage
Expand Down
Expand Up @@ -391,10 +391,7 @@ protected long getMaxMetricsWaitTime() {


spi.setAuthenticator(new DiscoverySpiNodeAuthenticator() { spi.setAuthenticator(new DiscoverySpiNodeAuthenticator() {
@Override public GridSecurityContext authenticateNode(ClusterNode n, GridSecurityCredentials cred) { @Override public GridSecurityContext authenticateNode(ClusterNode n, GridSecurityCredentials cred) {
GridSecuritySubjectAdapter subj = new GridSecuritySubjectAdapter( GridSecuritySubject subj = getGridSecuritySubject(GridSecuritySubjectType.REMOTE_NODE, n.id());
GridSecuritySubjectType.REMOTE_NODE, n.id());

subj.permissions(getAllPermissionSet());


return new GridSecurityContext(subj); return new GridSecurityContext(subj);
} }
Expand Down
Expand Up @@ -66,10 +66,7 @@ public DiscoverySpiDataExchange getDataExchange() {
public DiscoverySpiNodeAuthenticator getAuthenticator() { public DiscoverySpiNodeAuthenticator getAuthenticator() {
return new DiscoverySpiNodeAuthenticator() { return new DiscoverySpiNodeAuthenticator() {
@Override public GridSecurityContext authenticateNode(ClusterNode n, GridSecurityCredentials cred) { @Override public GridSecurityContext authenticateNode(ClusterNode n, GridSecurityCredentials cred) {
GridSecuritySubjectAdapter subj = new GridSecuritySubjectAdapter( GridSecuritySubject subj = getGridSecuritySubject(GridSecuritySubjectType.REMOTE_NODE, n.id());
GridSecuritySubjectType.REMOTE_NODE, n.id());

subj.permissions(getAllPermissionSet());


return new GridSecurityContext(subj); return new GridSecurityContext(subj);
} }
Expand Down
Expand Up @@ -38,6 +38,7 @@


import java.io.*; import java.io.*;
import java.lang.reflect.*; import java.lang.reflect.*;
import java.net.*;
import java.util.*; import java.util.*;
import java.util.concurrent.*; import java.util.concurrent.*;


Expand Down Expand Up @@ -98,7 +99,7 @@ protected TestData<T> getTestData() {
/** /**
* @return Allow all permission security set. * @return Allow all permission security set.
*/ */
protected GridSecurityPermissionSet getAllPermissionSet() { private GridSecurityPermissionSet getAllPermissionSet() {
return new GridSecurityPermissionSet() { return new GridSecurityPermissionSet() {
/** Serial version uid. */ /** Serial version uid. */
private static final long serialVersionUID = 0L; private static final long serialVersionUID = 0L;
Expand All @@ -125,6 +126,38 @@ protected GridSecurityPermissionSet getAllPermissionSet() {
}; };
} }


/**
* @return Grid allow all security subject.
*/
protected GridSecuritySubject getGridSecuritySubject(final GridSecuritySubjectType type, final UUID id) {
return new GridSecuritySubject() {
/** {@inheritDoc} */
@Override public UUID id() {
return id;
}

/** {@inheritDoc} */
@Override public GridSecuritySubjectType type() {
return type;
}

/** {@inheritDoc} */
@Override public Object login() {
return null;
}

/** {@inheritDoc} */
@Override public InetSocketAddress address() {
return null;
}

/** {@inheritDoc} */
@Override public GridSecurityPermissionSet permissions() {
return getAllPermissionSet();
}
};
}

/** /**
* @throws Exception If failed. * @throws Exception If failed.
*/ */
Expand Down Expand Up @@ -349,10 +382,7 @@ private void configureDiscovery(GridSpiTest spiTest) throws Exception {


discoSpi.setAuthenticator(new DiscoverySpiNodeAuthenticator() { discoSpi.setAuthenticator(new DiscoverySpiNodeAuthenticator() {
@Override public GridSecurityContext authenticateNode(ClusterNode n, GridSecurityCredentials cred) { @Override public GridSecurityContext authenticateNode(ClusterNode n, GridSecurityCredentials cred) {
GridSecuritySubjectAdapter subj = new GridSecuritySubjectAdapter( GridSecuritySubject subj = getGridSecuritySubject(GridSecuritySubjectType.REMOTE_NODE, n.id());
GridSecuritySubjectType.REMOTE_NODE, n.id());

subj.permissions(getAllPermissionSet());


return new GridSecurityContext(subj); return new GridSecurityContext(subj);
} }
Expand Down

0 comments on commit d169d96

Please sign in to comment.