http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthenticationEvent.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthenticationEvent.java b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthenticationEvent.java index 0ddb437..2e1224a 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthenticationEvent.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthenticationEvent.java @@ -10,7 +10,7 @@ package org.gridgain.grid.kernal.visor.event; import org.apache.ignite.lang.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.util.typedef.internal.*; import java.util.*;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthorizationEvent.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthorizationEvent.java b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthorizationEvent.java index 43217d8..36a53f9 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthorizationEvent.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridAuthorizationEvent.java @@ -10,7 +10,7 @@ package org.gridgain.grid.kernal.visor.event; import org.apache.ignite.lang.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.util.typedef.internal.*; import java.util.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridSecuritySessionEvent.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridSecuritySessionEvent.java b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridSecuritySessionEvent.java index 7f9b682..9511b48 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridSecuritySessionEvent.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/event/VisorGridSecuritySessionEvent.java @@ -10,7 +10,7 @@ package org.gridgain.grid.kernal.visor.event; import org.apache.ignite.lang.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.util.typedef.internal.*; import java.util.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/kernal/visor/node/VisorSegmentationConfiguration.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/node/VisorSegmentationConfiguration.java b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/node/VisorSegmentationConfiguration.java index 9980483..e381ef7 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/visor/node/VisorSegmentationConfiguration.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/visor/node/VisorSegmentationConfiguration.java @@ -10,7 +10,7 @@ package org.gridgain.grid.kernal.visor.node; import org.apache.ignite.configuration.*; -import org.gridgain.grid.segmentation.*; +import org.apache.ignite.plugin.segmentation.*; import org.gridgain.grid.util.typedef.internal.*; import org.jetbrains.annotations.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurity.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurity.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurity.java deleted file mode 100644 index 1d7b05f..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurity.java +++ /dev/null @@ -1,89 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.gridgain.grid.*; - -import java.util.*; - -/** - * Grid security facade. This facade contains information about authenticated subjects - * currently logged in to grid together with their permission sets. - * <p> - * You can get an instance of security facade from {@link org.apache.ignite.Ignite#security()} method. - * <h1 class="header">Grid Nodes vs Remote Clients</h1> - * When security is enabled, both grid nodes and remote clients must be authenticated. - * For grid nodes, authentication parameters are specified in grid configuration via - * {@link org.apache.ignite.configuration.IgniteConfiguration#getSecurityCredentialsProvider()} provider. Here is an example - * of how a simple user name and password may be provided: - * <pre class="brush: java"> - * GridConfiguration cfg = new GridConfiguration(); - * - * GridSecurityCredentials creds = new GridSecurityCredentials("username", "password"); - * - * cfg.setSecurityCredentialsProvider(new GridSecurityCredentialsBasicProvider(creds)); - * - * Grid grid = GridGain.start(cfg); - * </pre> - * For remote Java client, configuration is provided in a similar way by specifying - * {@code GridClientConfiguration.setSecurityCredentialsProvider(...)} property. - * <p> - * For remote C++ and .NET clients, security credentials are provided in configuration - * as well in the form of {@code "username:password"} string. - * <h1 class="header">Authentication And Authorization</h1> - * Node or client authentication happens in {@link org.apache.ignite.spi.authentication.AuthenticationSpi}. Upon successful - * authentication, the SPI will return list of permissions for authenticated subject. - * <p> - * GridGain ships with following authentication SPIs out of the box: - * <ul> - * <li>{@code GridJaasAuthenticationSpi} - provides authentication based on JAAS standard.</li> - * <li>{@code GridPasscodeAuthenticationSpi} - basic username and password authentication.</li> - * </ul> - * All permissions supported by GridGain are provided in {@link GridSecurityPermission} enum. Permissions - * are specified on per-cache or per-task level (wildcards are allowed). Authentication SPIs should usually - * (although not required) specify security permissions in the following JSON format: - * <pre class="brush: text"> - * { - * { - * "cache":"partitioned", - * "permissions":["CACHE_PUT", "CACHE_REMOVE", "CACHE_READ"] - * }, - * { - * "cache":"*", - * "permissions":["CACHE_READ"] - * }, - * { - * "task":"org.mytasks.*", - * "permissions":["TASK_EXECUTE"] - * }, - * { - * "system":["EVENTS_ENABLE", "ADMIN_VIEW"] - * } - * "defaultAllow":"false" - * } - * </pre> - * Refer to documentation of available authentication SPIs for more information. - */ -public interface GridSecurity { - /** - * Gets collection of authenticated subjects together with their permissions. - * - * @return Collection of authenticated subjects. - */ - public Collection<GridSecuritySubject> authenticatedSubjects() throws GridException; - - /** - * Gets security subject based on subject ID. - * - * @param subjId Subject ID. - * @return Authorized security subject. - */ - public GridSecuritySubject authenticatedSubject(UUID subjId) throws GridException; -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentials.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentials.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentials.java deleted file mode 100644 index 2cccfbc..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentials.java +++ /dev/null @@ -1,196 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.apache.ignite.portables.*; -import org.gridgain.grid.util.tostring.*; -import org.gridgain.grid.util.typedef.*; -import org.gridgain.grid.util.typedef.internal.*; -import org.jetbrains.annotations.*; - -import java.io.*; - -/** - * Security credentials used for client or node authentication. Security credentials - * are provided by {@link GridSecurityCredentialsProvider} which is specified on - * client or node startup in configuration. - * <p> - * For grid node, security credentials provider is specified in - * {@link org.apache.ignite.configuration.IgniteConfiguration#setSecurityCredentialsProvider(GridSecurityCredentialsProvider)} - * configuration property. For Java clients, you can provide credentials in - * {@code GridClientConfiguration.setSecurityCredentialsProvider(...)} method. - * <p> - * Getting credentials through {@link GridSecurityCredentialsProvider} abstraction allows - * users to provide custom implementations for storing user names and passwords in their - * environment, possibly in encrypted format. GridGain comes with - * {@link GridSecurityCredentialsBasicProvider} which simply provides - * the passed in {@code login} and {@code password} when encryption or custom logic is not required. - * <p> - * In addition to {@code login} and {@code password}, security credentials allow for - * specifying {@link #setUserObject(Object) userObject} as well, which can be used - * to pass in any additional information required for authentication. - */ -public class GridSecurityCredentials implements Externalizable, PortableMarshalAware { - /** */ - private static final long serialVersionUID = -2655741071578326256L; - - /** Login. */ - private Object login; - - /** Password. */ - @GridToStringExclude - private Object password; - - /** Additional user object. */ - @GridToStringExclude - private Object userObj; - - /** - * Empty constructor required by {@link Externalizable}. - */ - public GridSecurityCredentials() { - // No-op. - } - - /** - * Constructs security credentials based on {@code login} and {@code password}. - * - * @param login Login. - * @param password Password. - */ - public GridSecurityCredentials(String login, String password) { - this.login = login; - this.password = password; - } - - /** - * Constructs security credentials based on {@code login}, {@code password}, - * and custom user object. - * - * @param login Login. - * @param password Password. - * @param userObj User object. - */ - public GridSecurityCredentials(String login, String password, @Nullable Object userObj) { - this.login = login; - this.password = password; - this.userObj = userObj; - } - - /** - * Gets login. - * - * @return Login. - */ - public Object getLogin() { - return login; - } - - /** - * Sets login. - * - * @param login Login. - */ - public void setLogin(Object login) { - this.login = login; - } - - /** - * Gets password. - * - * @return Password. - */ - public Object getPassword() { - return password; - } - - /** - * Sets password. - * - * @param password Password. - */ - public void setPassword(Object password) { - this.password = password; - } - - /** - * Gets user-specific object. - * - * @return User object. - */ - @Nullable public Object getUserObject() { - return userObj; - } - - /** - * Sets user-specific object. - * - * @param userObj User object. - */ - public void setUserObject(@Nullable Object userObj) { - this.userObj = userObj; - } - - /** {@inheritDoc} */ - @Override public void writeExternal(ObjectOutput out) throws IOException { - out.writeObject(login); - out.writeObject(password); - out.writeObject(userObj); - } - - /** {@inheritDoc} */ - @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { - login = in.readObject(); - password = in.readObject(); - userObj = in.readObject(); - } - - /** {@inheritDoc} */ - @Override public boolean equals(Object o) { - if (this == o) - return true; - - if (!(o instanceof GridSecurityCredentials)) - return false; - - GridSecurityCredentials that = (GridSecurityCredentials)o; - - return F.eq(login, that.login) && F.eq(password, that.password) && F.eq(userObj, that.userObj); - } - - /** {@inheritDoc} */ - @Override public int hashCode() { - int res = login != null ? login.hashCode() : 0; - - res = 31 * res + (password != null ? password.hashCode() : 0); - res = 31 * res + (userObj != null ? userObj.hashCode() : 0); - - return res; - } - - /** {@inheritDoc} */ - @Override public void writePortable(PortableWriter writer) throws PortableException { - writer.rawWriter().writeObject(login); - writer.rawWriter().writeObject(password); - writer.rawWriter().writeObject(userObj); - } - - /** {@inheritDoc} */ - @Override public void readPortable(PortableReader reader) throws PortableException { - login = reader.rawReader().readObject(); - password = reader.rawReader().readObject(); - userObj = reader.rawReader().readObject(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSecurityCredentials.class, this); - } -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsBasicProvider.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsBasicProvider.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsBasicProvider.java deleted file mode 100644 index 1a33152..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsBasicProvider.java +++ /dev/null @@ -1,36 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.gridgain.grid.*; - -/** - * Basic implementation for {@link GridSecurityCredentialsProvider}. Use it - * when custom logic for storing security credentials is not required and it - * is OK to specify credentials directly in configuration. - */ -public class GridSecurityCredentialsBasicProvider implements GridSecurityCredentialsProvider { - /** */ - private GridSecurityCredentials cred; - - /** - * Constructs security credentials provider based on security credentials passed in. - * - * @param cred Security credentials. - */ - public GridSecurityCredentialsBasicProvider(GridSecurityCredentials cred) { - this.cred = cred; - } - - /** {@inheritDoc} */ - @Override public GridSecurityCredentials credentials() throws GridException { - return cred; - } -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsProvider.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsProvider.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsProvider.java deleted file mode 100644 index afdfece..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityCredentialsProvider.java +++ /dev/null @@ -1,41 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.gridgain.grid.*; - -/** - * Security credentials provider for specifying security credentials. - * Security credentials used for client or node authentication. - * <p> - * For grid node, security credentials provider is specified in - * {@link org.apache.ignite.configuration.IgniteConfiguration#setSecurityCredentialsProvider(GridSecurityCredentialsProvider)} - * configuration property. For Java clients, you can provide credentials in - * {@code GridClientConfiguration.setSecurityCredentialsProvider(...)} method. - * <p> - * Getting credentials through {@link GridSecurityCredentialsProvider} abstraction allows - * users to provide custom implementations for storing user names and passwords in their - * environment, possibly in encrypted format. GridGain comes with - * {@link GridSecurityCredentialsBasicProvider} which simply provides - * the passed in {@code login} and {@code password} when encryption or custom logic is not required. - * <p> - * In addition to {@code login} and {@code password}, security credentials allow for - * specifying {@link GridSecurityCredentials#setUserObject(Object) userObject} as well, which can be used - * to pass in any additional information required for authentication. - */ -public interface GridSecurityCredentialsProvider { - /** - * Gets security credentials. - * - * @return Security credentials. - * @throws GridException If failed. - */ - public GridSecurityCredentials credentials() throws GridException; -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityException.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityException.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityException.java deleted file mode 100644 index a5d13fd..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityException.java +++ /dev/null @@ -1,50 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.gridgain.grid.*; -import org.jetbrains.annotations.*; - -/** - * Common security exception for the grid. - */ -public class GridSecurityException extends GridRuntimeException { - /** */ - private static final long serialVersionUID = 0L; - - /** - * Constructs security grid exception with given message and cause. - * - * @param msg Exception message. - * @param cause Exception cause. - */ - public GridSecurityException(String msg, @Nullable Throwable cause) { - super(msg, cause); - } - - /** - * Creates new security grid exception given throwable as a cause and - * source of error message. - * - * @param cause Non-null throwable cause. - */ - public GridSecurityException(Throwable cause) { - this(cause.getMessage(), cause); - } - - /** - * Constructs security grid exception with given message. - * - * @param msg Exception message. - */ - public GridSecurityException(String msg) { - super(msg); - } -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermission.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermission.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermission.java deleted file mode 100644 index 4cfabec..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermission.java +++ /dev/null @@ -1,61 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.jetbrains.annotations.*; - -/** - * Supported security permissions within grid. Permissions - * are specified on per-cache or per-task level. - */ -public enum GridSecurityPermission { - /** Cache {@code read} permission. */ - CACHE_READ, - - /** Cache {@code put} permission. */ - CACHE_PUT, - - /** Cache {@code remove} permission. */ - CACHE_REMOVE, - - /** Task {@code execute} permission. */ - TASK_EXECUTE, - - /** Task {@code cancel} permission. */ - TASK_CANCEL, - - /** Events {@code enable} permission. */ - EVENTS_ENABLE, - - /** Events {@code disable} permission. */ - EVENTS_DISABLE, - - /** Common visor tasks permission. */ - ADMIN_VIEW, - - /** Visor cache read (query) permission. */ - ADMIN_QUERY, - - /** Visor cache load permission. */ - ADMIN_CACHE; - - /** Enumerated values. */ - private static final GridSecurityPermission[] VALS = values(); - - /** - * Efficiently gets enumerated value from its ordinal. - * - * @param ord Ordinal value. - * @return Enumerated value or {@code null} if ordinal out of range. - */ - @Nullable public static GridSecurityPermission fromOrdinal(int ord) { - return ord >= 0 && ord < VALS.length ? VALS[ord] : null; - } -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermissionSet.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermissionSet.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermissionSet.java deleted file mode 100644 index 0a89704..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecurityPermissionSet.java +++ /dev/null @@ -1,58 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.jetbrains.annotations.*; - -import java.io.*; -import java.util.*; - -/** - * Security permission set for authorized security subjects. Permission set - * allows to specify task permissions for every task and cache permissions - * for every cache. While cards are supported at the end of task or - * cache name. - * <p> - * Property {@link #defaultAllowAll()} specifies whether to allow or deny - * cache and task operations if they were not explicitly specified. - */ -public interface GridSecurityPermissionSet extends Serializable { - /** - * Flag indicating whether to allow or deny cache and task operations - * if they were not explicitly specified. - * - * @return {@code True} to allow all cache task operations if they were - * not explicitly specified, {@code false} otherwise. - */ - public boolean defaultAllowAll(); - - /** - * Map of task names to task permissions. Wildcards are allowed at the - * end of task names. - * - * @return Map of task names to task permissions. - */ - public Map<String, Collection<GridSecurityPermission>> taskPermissions(); - - /** - * Map of cache names to cache permissions. Wildcards are allowed at the - * end of cache names. - * - * @return Map of cache names to cache permissions. - */ - public Map<String, Collection<GridSecurityPermission>> cachePermissions(); - - /** - * Collection of system-wide permissions (events enable/disable, Visor task execution). - * - * @return Collection of system-wide permissions. - */ - @Nullable public Collection<GridSecurityPermission> systemPermissions(); -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubject.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubject.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubject.java deleted file mode 100644 index c289ec8..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubject.java +++ /dev/null @@ -1,55 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import java.io.*; -import java.net.*; -import java.util.*; - -/** - * Security subject representing authenticated node or client with a set of permissions. - * List of authenticated subjects can be retrieved from {@link GridSecurity#authenticatedSubjects()} method. - */ -public interface GridSecuritySubject extends Serializable { - /** - * Gets subject ID. - * - * @return Subject ID. - */ - public UUID id(); - - /** - * Gets subject type, either node or client. - * - * @return Subject type. - */ - public GridSecuritySubjectType type(); - - /** - * Login provided via subject security credentials. - * - * @return Login object. - */ - public Object login(); - - /** - * Gets subject connection address. Usually {@link InetSocketAddress} representing connection IP and port. - * - * @return Subject connection address. - */ - public InetSocketAddress address(); - - /** - * Authorized permission set for the subject. - * - * @return Authorized permission set for the subject. - */ - public GridSecurityPermissionSet permissions(); -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubjectType.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubjectType.java b/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubjectType.java deleted file mode 100644 index 8af3476..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/GridSecuritySubjectType.java +++ /dev/null @@ -1,40 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.security; - -import org.jetbrains.annotations.*; - -/** - * Supported security subject types. Subject type can be retrieved form {@link GridSecuritySubject#type()} method. - */ -public enum GridSecuritySubjectType { - /** - * Subject type for a remote {@link org.apache.ignite.cluster.ClusterNode}. - */ - REMOTE_NODE, - - /** - * Subject type for remote client. - */ - REMOTE_CLIENT; - - /** Enumerated values. */ - private static final GridSecuritySubjectType[] VALS = values(); - - /** - * Efficiently gets enumerated value from its ordinal. - * - * @param ord Ordinal value. - * @return Enumerated value. - */ - @Nullable public static GridSecuritySubjectType fromOrdinal(byte ord) { - return ord >= 0 && ord < VALS.length ? VALS[ord] : null; - } -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/security/package.html ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/security/package.html b/modules/core/src/main/java/org/gridgain/grid/security/package.html deleted file mode 100644 index bd468a3..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/security/package.html +++ /dev/null @@ -1,15 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<!-- - @html.file.header - _________ _____ __________________ _____ - __ ____/___________(_)______ /__ ____/______ ____(_)_______ - _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ ---> -<html> -<body> - <!-- Package description. --> - Contains APIs for security, authentication, and authorization. -</body> -</html> http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationPolicy.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationPolicy.java b/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationPolicy.java deleted file mode 100644 index 21c6d14..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationPolicy.java +++ /dev/null @@ -1,40 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.segmentation; - -/** - * Policy that defines how node will react on topology segmentation. Note that default - * segmentation policy is defined by {@link org.apache.ignite.configuration.IgniteConfiguration#DFLT_SEG_PLC} property. - * @see GridSegmentationResolver - */ -public enum GridSegmentationPolicy { - /** - * When segmentation policy is {@code RESTART_JVM}, all listeners will receive - * {@link org.apache.ignite.events.IgniteEventType#EVT_NODE_SEGMENTED} event and then JVM will be restarted. - * Note, that this will work <b>only</b> if GridGain is started with {@link org.apache.ignite.startup.cmdline.CommandLineStartup} - * via standard {@code ggstart.{sh|bat}} shell script. - */ - RESTART_JVM, - - /** - * When segmentation policy is {@code STOP}, all listeners will receive - * {@link org.apache.ignite.events.IgniteEventType#EVT_NODE_SEGMENTED} event and then particular grid node - * will be stopped via call to {@link org.apache.ignite.Ignition#stop(String, boolean)}. - */ - STOP, - - /** - * When segmentation policy is {@code NOOP}, all listeners will receive - * {@link org.apache.ignite.events.IgniteEventType#EVT_NODE_SEGMENTED} event and it is up to user to - * implement logic to handle this event. - */ - NOOP -} - http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationResolver.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationResolver.java b/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationResolver.java deleted file mode 100644 index c18fb56..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/segmentation/GridSegmentationResolver.java +++ /dev/null @@ -1,56 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid.segmentation; - -import org.gridgain.grid.*; - -import java.io.*; - -/** - * This is interface for segmentation (a.k.a "split-brain" problem) resolvers. - * <p> - * Each segmentation resolver checks segment for validity, using its inner logic. - * Typically, resolver should run light-weight single check (i.e. one IP address or - * one shared folder). Compound segment checks may be performed using several - * resolvers. - * <p> - * Note that GridGain support a logical segmentation and not limited to network - * related segmentation only. For example, a particular segmentation resolver - * can check for specific application or service present on the network and - * mark the topology as segmented in case it is not available. In other words - * you can equate the service outage with network outage via segmentation resolution - * and employ the unified approach in dealing with these types of problems. - * @see org.apache.ignite.configuration.IgniteConfiguration#getSegmentationResolvers() - * @see org.apache.ignite.configuration.IgniteConfiguration#getSegmentationPolicy() - * @see org.apache.ignite.configuration.IgniteConfiguration#getSegmentCheckFrequency() - * @see org.apache.ignite.configuration.IgniteConfiguration#isAllSegmentationResolversPassRequired() - * @see org.apache.ignite.configuration.IgniteConfiguration#isWaitForSegmentOnStart() - * @see GridSegmentationPolicy - */ -public interface GridSegmentationResolver extends Serializable { - /** - * Checks whether segment is valid. - * <p> - * When segmentation happens every node ends up in either one of two segments: - * <ul> - * <li>Correct segment</li> - * <li>Invalid segment</li> - * </ul> - * Nodes in correct segment will continue operate as if nodes in the invalid segment - * simply left the topology (i.e. the topology just got "smaller"). Nodes in the - * invalid segment will realized that were "left out or disconnected" from the correct segment - * and will try to reconnect via {@link GridSegmentationPolicy segmentation policy} set - * in configuration. - * - * @return {@code True} if segment is correct, {@code false} otherwise. - * @throws GridException If an error occurred. - */ - public abstract boolean isValidSegment() throws GridException; -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/segmentation/package.html ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/segmentation/package.html b/modules/core/src/main/java/org/gridgain/grid/segmentation/package.html deleted file mode 100644 index a4754a1..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/segmentation/package.html +++ /dev/null @@ -1,15 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<!-- - @html.file.header - _________ _____ __________________ _____ - __ ____/___________(_)______ /__ ____/______ ____(_)_______ - _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ ---> -<html> -<body> - <!-- Package description. --> - Contains segmentation "split-brain" related classes. -</body> -</html> http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/main/java/org/gridgain/grid/spi/package.html ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/spi/package.html b/modules/core/src/main/java/org/gridgain/grid/spi/package.html deleted file mode 100644 index 72117f8..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/spi/package.html +++ /dev/null @@ -1,15 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<!-- - @html.file.header - _________ _____ __________________ _____ - __ ____/___________(_)______ /__ ____/______ ____(_)_______ - _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ ---> -<html> -<body> - <!-- Package description. --> - Contains common classes and interfaces for SPI implementations. -</body> -</html> http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/test/java/org/apache/ignite/spi/discovery/GridAbstractDiscoverySelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/GridAbstractDiscoverySelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/GridAbstractDiscoverySelfTest.java index 338ce9e..efbc8c6 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/GridAbstractDiscoverySelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/GridAbstractDiscoverySelfTest.java @@ -14,7 +14,7 @@ import org.apache.ignite.cluster.*; import org.apache.ignite.marshaller.*; import org.apache.ignite.spi.*; import org.gridgain.grid.kernal.managers.security.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.util.typedef.internal.*; import org.gridgain.testframework.config.*; import org.gridgain.testframework.junits.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/GridTcpDiscoverySpiStartStopSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/GridTcpDiscoverySpiStartStopSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/GridTcpDiscoverySpiStartStopSelfTest.java index 5b7386d..2b4af2e 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/GridTcpDiscoverySpiStartStopSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/GridTcpDiscoverySpiStartStopSelfTest.java @@ -11,7 +11,7 @@ package org.apache.ignite.spi.discovery.tcp; import org.apache.ignite.cluster.*; import org.gridgain.grid.kernal.managers.security.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.spi.*; import org.apache.ignite.spi.discovery.*; import org.apache.ignite.spi.discovery.tcp.ipfinder.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/test/java/org/gridgain/grid/kernal/GridLifecycleAwareSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/gridgain/grid/kernal/GridLifecycleAwareSelfTest.java b/modules/core/src/test/java/org/gridgain/grid/kernal/GridLifecycleAwareSelfTest.java index 8bde51f..72aee8d 100644 --- a/modules/core/src/test/java/org/gridgain/grid/kernal/GridLifecycleAwareSelfTest.java +++ b/modules/core/src/test/java/org/gridgain/grid/kernal/GridLifecycleAwareSelfTest.java @@ -15,7 +15,7 @@ import org.apache.ignite.logger.java.*; import org.apache.ignite.marshaller.optimized.*; import org.gridgain.client.ssl.*; import org.gridgain.grid.*; -import org.gridgain.grid.segmentation.*; +import org.apache.ignite.plugin.segmentation.*; import org.gridgain.testframework.junits.common.*; import org.jetbrains.annotations.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/test/java/org/gridgain/testframework/GridSpiTestContext.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/gridgain/testframework/GridSpiTestContext.java b/modules/core/src/test/java/org/gridgain/testframework/GridSpiTestContext.java index a0be5f1..679976f 100644 --- a/modules/core/src/test/java/org/gridgain/testframework/GridSpiTestContext.java +++ b/modules/core/src/test/java/org/gridgain/testframework/GridSpiTestContext.java @@ -16,7 +16,7 @@ import org.apache.ignite.spi.*; import org.gridgain.grid.*; import org.gridgain.grid.kernal.managers.communication.*; import org.gridgain.grid.kernal.managers.eventstorage.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.apache.ignite.spi.discovery.*; import org.apache.ignite.spi.swapspace.*; import org.gridgain.grid.util.direct.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/core/src/test/java/org/gridgain/testframework/junits/spi/GridSpiAbstractTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/gridgain/testframework/junits/spi/GridSpiAbstractTest.java b/modules/core/src/test/java/org/gridgain/testframework/junits/spi/GridSpiAbstractTest.java index 798c1dd..767b0f2 100644 --- a/modules/core/src/test/java/org/gridgain/testframework/junits/spi/GridSpiAbstractTest.java +++ b/modules/core/src/test/java/org/gridgain/testframework/junits/spi/GridSpiAbstractTest.java @@ -14,7 +14,7 @@ import org.apache.ignite.product.*; import org.apache.ignite.spi.*; import org.gridgain.grid.kernal.*; import org.gridgain.grid.kernal.managers.security.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.apache.ignite.spi.communication.*; import org.apache.ignite.spi.communication.tcp.*; import org.apache.ignite.spi.discovery.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/rest-http/src/main/java/org/gridgain/grid/kernal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java ---------------------------------------------------------------------- diff --git a/modules/rest-http/src/main/java/org/gridgain/grid/kernal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java b/modules/rest-http/src/main/java/org/gridgain/grid/kernal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java index 277e1cf..85d1e58 100644 --- a/modules/rest-http/src/main/java/org/gridgain/grid/kernal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java +++ b/modules/rest-http/src/main/java/org/gridgain/grid/kernal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java @@ -17,7 +17,7 @@ import org.eclipse.jetty.server.handler.*; import org.gridgain.grid.*; import org.gridgain.grid.kernal.processors.rest.*; import org.gridgain.grid.kernal.processors.rest.request.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.util.typedef.*; import org.gridgain.grid.util.typedef.internal.*; import org.jetbrains.annotations.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/modules/spring/src/main/java/org/gridgain/grid/GridSpringBean.java ---------------------------------------------------------------------- diff --git a/modules/spring/src/main/java/org/gridgain/grid/GridSpringBean.java b/modules/spring/src/main/java/org/gridgain/grid/GridSpringBean.java index 8378260..28efd6c 100644 --- a/modules/spring/src/main/java/org/gridgain/grid/GridSpringBean.java +++ b/modules/spring/src/main/java/org/gridgain/grid/GridSpringBean.java @@ -16,7 +16,7 @@ import org.apache.ignite.plugin.*; import org.apache.ignite.product.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.hadoop.*; -import org.gridgain.grid.security.*; +import org.apache.ignite.plugin.security.*; import org.gridgain.grid.util.lang.*; import org.gridgain.grid.util.typedef.*; import org.gridgain.grid.util.typedef.internal.*; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8c20bddb/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index e00d6f3..a50b5e0 100644 --- a/pom.xml +++ b/pom.xml @@ -635,7 +635,7 @@ </group> <group> <title>Security APIs</title> - <packages>org.gridgain.grid.security</packages> + <packages>org.apache.ignite.plugin.security</packages> </group> <group> <title>Distributed Services APIs</title> @@ -687,7 +687,7 @@ </group> <group> <title>Segmentation Detection</title> - <packages>org.gridgain.grid.segmentation</packages> + <packages>org.apache.ignite.plugin.segmentation</packages> </group> <group> <title>Logging</title> @@ -837,7 +837,7 @@ </group> <group> <title>Security APIs</title> - <packages>org.gridgain.grid.security</packages> + <packages>org.apache.ignite.plugin.security</packages> </group> <group> <title>Distributed Services APIs</title> @@ -889,7 +889,7 @@ </group> <group> <title>Segmentation Detection</title> - <packages>org.gridgain.grid.segmentation</packages> + <packages>org.apache.ignite.plugin.segmentation</packages> </group> <group> <title>Logging</title>