HHH-14845 - Deprecate JACC support
This commit is contained in:
parent
dc450d8bb3
commit
3570115635
|
@ -24,6 +24,7 @@ import org.hibernate.boot.jaxb.cfg.spi.JaxbCfgEventListenerType;
|
||||||
import org.hibernate.boot.jaxb.cfg.spi.JaxbCfgHibernateConfiguration;
|
import org.hibernate.boot.jaxb.cfg.spi.JaxbCfgHibernateConfiguration;
|
||||||
import org.hibernate.boot.jaxb.cfg.spi.JaxbCfgMappingReferenceType;
|
import org.hibernate.boot.jaxb.cfg.spi.JaxbCfgMappingReferenceType;
|
||||||
import org.hibernate.event.spi.EventType;
|
import org.hibernate.event.spi.EventType;
|
||||||
|
import org.hibernate.internal.log.DeprecationLogger;
|
||||||
import org.hibernate.secure.spi.GrantedPermission;
|
import org.hibernate.secure.spi.GrantedPermission;
|
||||||
import org.hibernate.secure.spi.JaccPermissionDeclarations;
|
import org.hibernate.secure.spi.JaccPermissionDeclarations;
|
||||||
|
|
||||||
|
@ -59,10 +60,18 @@ public class LoadedConfig {
|
||||||
return configurationValues;
|
return configurationValues;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
public Map<String, JaccPermissionDeclarations> getJaccPermissionsByContextId() {
|
public Map<String, JaccPermissionDeclarations> getJaccPermissionsByContextId() {
|
||||||
return jaccPermissionsByContextId;
|
return jaccPermissionsByContextId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
public JaccPermissionDeclarations getJaccPermissions(String jaccContextId) {
|
public JaccPermissionDeclarations getJaccPermissions(String jaccContextId) {
|
||||||
return jaccPermissionsByContextId.get( jaccContextId );
|
return jaccPermissionsByContextId.get( jaccContextId );
|
||||||
}
|
}
|
||||||
|
@ -102,11 +111,11 @@ public class LoadedConfig {
|
||||||
cfg.addCacheRegionDefinition( parseCacheRegionDefinition( cacheDeclaration ) );
|
cfg.addCacheRegionDefinition( parseCacheRegionDefinition( cacheDeclaration ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( jaxbCfg.getSecurity() != null ) {
|
if ( jaxbCfg.getSecurity() != null && ! jaxbCfg.getSecurity().getGrant().isEmpty() ) {
|
||||||
|
DeprecationLogger.DEPRECATION_LOGGER.deprecatedJaccCfgXmlSettings();
|
||||||
for ( JaxbCfgHibernateConfiguration.JaxbCfgSecurity.JaxbCfgGrant grant : jaxbCfg.getSecurity().getGrant() ) {
|
for ( JaxbCfgHibernateConfiguration.JaxbCfgSecurity.JaxbCfgGrant grant : jaxbCfg.getSecurity().getGrant() ) {
|
||||||
final JaccPermissionDeclarations jaccPermissions = cfg.getOrCreateJaccPermissions(
|
final JaccPermissionDeclarations jaccPermissions = cfg.getOrCreateJaccPermissions(
|
||||||
jaxbCfg.getSecurity()
|
jaxbCfg.getSecurity().getContext()
|
||||||
.getContext()
|
|
||||||
);
|
);
|
||||||
jaccPermissions.addPermissionDeclaration(
|
jaccPermissions.addPermissionDeclaration(
|
||||||
new GrantedPermission(
|
new GrantedPermission(
|
||||||
|
|
|
@ -1692,10 +1692,6 @@ public interface AvailableSettings extends org.hibernate.jpa.AvailableSettings {
|
||||||
*/
|
*/
|
||||||
String JTA_TRACK_BY_THREAD = "hibernate.jta.track_by_thread";
|
String JTA_TRACK_BY_THREAD = "hibernate.jta.track_by_thread";
|
||||||
|
|
||||||
String JACC_CONTEXT_ID = "hibernate.jacc_context_id";
|
|
||||||
String JACC_PREFIX = "hibernate.jacc";
|
|
||||||
String JACC_ENABLED = "hibernate.jacc.enabled";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If enabled, allows schema update and validation to support synonyms. Due
|
* If enabled, allows schema update and validation to support synonyms. Due
|
||||||
* to the possibility that this would return duplicate tables (especially in
|
* to the possibility that this would return duplicate tables (especially in
|
||||||
|
@ -2098,4 +2094,19 @@ public interface AvailableSettings extends org.hibernate.jpa.AvailableSettings {
|
||||||
*/
|
*/
|
||||||
String OMIT_JOIN_OF_SUPERCLASS_TABLES = "hibernate.query.omit_join_of_superclass_tables";
|
String OMIT_JOIN_OF_SUPERCLASS_TABLES = "hibernate.query.omit_join_of_superclass_tables";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
|
String JACC_CONTEXT_ID = "hibernate.jacc_context_id";
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
|
String JACC_PREFIX = "hibernate.jacc";
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
|
String JACC_ENABLED = "hibernate.jacc.enabled";
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,8 +47,11 @@ public abstract class AbstractPreDatabaseOperationEvent
|
||||||
* Retrieves the entity involved in the database operation.
|
* Retrieves the entity involved in the database operation.
|
||||||
*
|
*
|
||||||
* @return The entity.
|
* @return The entity.
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
@Deprecated
|
||||||
public Object getEntity() {
|
public Object getEntity() {
|
||||||
return entity;
|
return entity;
|
||||||
}
|
}
|
||||||
|
@ -88,12 +91,20 @@ public abstract class AbstractPreDatabaseOperationEvent
|
||||||
return getSession();
|
return getSession();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
@Deprecated
|
||||||
public String getEntityName() {
|
public String getEntityName() {
|
||||||
return persister.getEntityName();
|
return persister.getEntityName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
@Deprecated
|
||||||
public Serializable getIdentifier() {
|
public Serializable getIdentifier() {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
|
@ -249,4 +249,28 @@ public interface DeprecationLogger extends BasicLogger {
|
||||||
"5.3 in upgrading. It will be removed in a later version."
|
"5.3 in upgrading. It will be removed in a later version."
|
||||||
)
|
)
|
||||||
void logUseOfDeprecatedZeroBasedJdbcStyleParams();
|
void logUseOfDeprecatedZeroBasedJdbcStyleParams();
|
||||||
|
|
||||||
|
@LogMessage(level = WARN)
|
||||||
|
@Message(
|
||||||
|
id = 90000025,
|
||||||
|
value = "Encountered multiple component mappings for the same java class [%s] with different property mappings. " +
|
||||||
|
"This is deprecated and will be removed in a future version. Every property mapping combination should have its own java class"
|
||||||
|
)
|
||||||
|
void deprecatedComponentMapping(String name);
|
||||||
|
|
||||||
|
@LogMessage(level = WARN)
|
||||||
|
@Message(
|
||||||
|
id = 90000026,
|
||||||
|
value = "JACC integration was enabled. Support for JACC integration will be removed in version 6.0. Use of" +
|
||||||
|
"`%s`, `%s` or `%s` settings is discouraged"
|
||||||
|
)
|
||||||
|
void deprecatedJaccUsage(String jaccEnabled, String jaccContextId, String jaccPrefix);
|
||||||
|
|
||||||
|
@LogMessage(level = WARN)
|
||||||
|
@Message(
|
||||||
|
id = 90000027,
|
||||||
|
value = "JACC settings encountered in hibernate `cfg.xml` file. JACC integration is deprecated and will be removed in version 6.0"
|
||||||
|
)
|
||||||
|
void deprecatedJaccCfgXmlSettings();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,7 +16,10 @@ import org.hibernate.secure.spi.PermissionCheckEntityInformation;
|
||||||
* Base class for JACC-securable event listeners
|
* Base class for JACC-securable event listeners
|
||||||
*
|
*
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public abstract class AbstractJaccSecurableEventListener implements JaccSecurityListener {
|
public abstract class AbstractJaccSecurableEventListener implements JaccSecurityListener {
|
||||||
private JaccService jaccService;
|
private JaccService jaccService;
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,10 @@ import org.hibernate.secure.spi.PermissibleAction;
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class JaccPreDeleteEventListener extends AbstractJaccSecurableEventListener implements PreDeleteEventListener {
|
public class JaccPreDeleteEventListener extends AbstractJaccSecurableEventListener implements PreDeleteEventListener {
|
||||||
public JaccPreDeleteEventListener() {
|
public JaccPreDeleteEventListener() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,10 @@ import org.hibernate.secure.spi.PermissibleAction;
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class JaccPreInsertEventListener extends AbstractJaccSecurableEventListener implements PreInsertEventListener {
|
public class JaccPreInsertEventListener extends AbstractJaccSecurableEventListener implements PreInsertEventListener {
|
||||||
public JaccPreInsertEventListener() {
|
public JaccPreInsertEventListener() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,10 @@ import org.hibernate.secure.spi.PermissibleAction;
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class JaccPreLoadEventListener extends AbstractJaccSecurableEventListener implements PreLoadEventListener {
|
public class JaccPreLoadEventListener extends AbstractJaccSecurableEventListener implements PreLoadEventListener {
|
||||||
public JaccPreLoadEventListener() {
|
public JaccPreLoadEventListener() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,10 @@ import org.hibernate.secure.spi.PermissibleAction;
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
* @author <a href="mailto:kabir.khan@jboss.org">Kabir Khan</a>
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class JaccPreUpdateEventListener extends AbstractJaccSecurableEventListener implements PreUpdateEventListener {
|
public class JaccPreUpdateEventListener extends AbstractJaccSecurableEventListener implements PreUpdateEventListener {
|
||||||
public JaccPreUpdateEventListener() {
|
public JaccPreUpdateEventListener() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,6 +11,9 @@ package org.hibernate.secure.internal;
|
||||||
* {@link org.hibernate.secure.spi.JaccIntegrator} for details.
|
* {@link org.hibernate.secure.spi.JaccIntegrator} for details.
|
||||||
*
|
*
|
||||||
* @author <a href="kabir.khan@jboss.com">Kabir Khan</a>
|
* @author <a href="kabir.khan@jboss.com">Kabir Khan</a>
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public interface JaccSecurityListener {
|
public interface JaccSecurityListener {
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,10 @@ import org.jboss.logging.Logger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class StandardJaccServiceImpl implements JaccService, Configurable {
|
public class StandardJaccServiceImpl implements JaccService, Configurable {
|
||||||
private static final Logger log = Logger.getLogger( StandardJaccServiceImpl.class );
|
private static final Logger log = Logger.getLogger( StandardJaccServiceImpl.class );
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,10 @@ package org.hibernate.secure.spi;
|
||||||
* Describes a Hibernate (persistence) permission.
|
* Describes a Hibernate (persistence) permission.
|
||||||
*
|
*
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class GrantedPermission {
|
public class GrantedPermission {
|
||||||
private final String role;
|
private final String role;
|
||||||
private final String entityName;
|
private final String entityName;
|
||||||
|
|
|
@ -17,6 +17,7 @@ import org.hibernate.event.service.spi.DuplicationStrategy;
|
||||||
import org.hibernate.event.service.spi.EventListenerRegistry;
|
import org.hibernate.event.service.spi.EventListenerRegistry;
|
||||||
import org.hibernate.event.spi.EventType;
|
import org.hibernate.event.spi.EventType;
|
||||||
import org.hibernate.integrator.spi.ServiceContributingIntegrator;
|
import org.hibernate.integrator.spi.ServiceContributingIntegrator;
|
||||||
|
import org.hibernate.internal.log.DeprecationLogger;
|
||||||
import org.hibernate.secure.internal.DisabledJaccServiceImpl;
|
import org.hibernate.secure.internal.DisabledJaccServiceImpl;
|
||||||
import org.hibernate.secure.internal.JaccPreDeleteEventListener;
|
import org.hibernate.secure.internal.JaccPreDeleteEventListener;
|
||||||
import org.hibernate.secure.internal.JaccPreInsertEventListener;
|
import org.hibernate.secure.internal.JaccPreInsertEventListener;
|
||||||
|
@ -32,7 +33,10 @@ import org.jboss.logging.Logger;
|
||||||
* Integrator for setting up JACC integration
|
* Integrator for setting up JACC integration
|
||||||
*
|
*
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class JaccIntegrator implements ServiceContributingIntegrator {
|
public class JaccIntegrator implements ServiceContributingIntegrator {
|
||||||
private static final Logger log = Logger.getLogger( JaccIntegrator.class );
|
private static final Logger log = Logger.getLogger( JaccIntegrator.class );
|
||||||
|
|
||||||
|
@ -81,6 +85,12 @@ public class JaccIntegrator implements ServiceContributingIntegrator {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DeprecationLogger.DEPRECATION_LOGGER.deprecatedJaccUsage(
|
||||||
|
AvailableSettings.JACC_ENABLED,
|
||||||
|
AvailableSettings.JACC_CONTEXT_ID,
|
||||||
|
AvailableSettings.JACC_PREFIX
|
||||||
|
);
|
||||||
|
|
||||||
final String contextId = (String) properties.get( AvailableSettings.JACC_CONTEXT_ID );
|
final String contextId = (String) properties.get( AvailableSettings.JACC_CONTEXT_ID );
|
||||||
if ( contextId == null ) {
|
if ( contextId == null ) {
|
||||||
throw new IntegrationException( "JACC context id must be specified" );
|
throw new IntegrationException( "JACC context id must be specified" );
|
||||||
|
|
|
@ -12,7 +12,10 @@ import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class JaccPermissionDeclarations {
|
public class JaccPermissionDeclarations {
|
||||||
private final String contextId;
|
private final String contextId;
|
||||||
private List<GrantedPermission> permissionDeclarations;
|
private List<GrantedPermission> permissionDeclarations;
|
||||||
|
|
|
@ -12,7 +12,10 @@ import org.hibernate.service.Service;
|
||||||
* Service describing Hibernate integration with JACC for security service.
|
* Service describing Hibernate integration with JACC for security service.
|
||||||
*
|
*
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public interface JaccService extends Service {
|
public interface JaccService extends Service {
|
||||||
/**
|
/**
|
||||||
* Obtain the JACC context-id in effect for this service. {@code null} indicates no
|
* Obtain the JACC context-id in effect for this service. {@code null} indicates no
|
||||||
|
|
|
@ -8,7 +8,10 @@ package org.hibernate.secure.spi;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public enum PermissibleAction {
|
public enum PermissibleAction {
|
||||||
INSERT( "insert" ),
|
INSERT( "insert" ),
|
||||||
UPDATE( "update" ),
|
UPDATE( "update" ),
|
||||||
|
|
|
@ -10,7 +10,10 @@ import java.io.Serializable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Steve Ebersole
|
* @author Steve Ebersole
|
||||||
|
*
|
||||||
|
* @deprecated Support for JACC will be removed in 6.0
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public interface PermissionCheckEntityInformation {
|
public interface PermissionCheckEntityInformation {
|
||||||
public Object getEntity();
|
public Object getEntity();
|
||||||
public String getEntityName();
|
public String getEntityName();
|
||||||
|
|
Loading…
Reference in New Issue