项目:gemfirexd-oss
文件:ClientConnection.java
@Override
public void abort(Executor executor) throws sqlException {
// no locking here since it is supposed to be used by admins when the socket
// may be already in use
checkClosedConnection();
// check permission
SecurityManager sm = System.getSecurityManager();
if (sm != null) {
sm.checkPermission(new sqlPermission("callAbort"));
}
if (executor == null) {
throw ThriftExceptionUtil.newsqlException(
sqlState.LANG_UNEXPECTED_USER_EXCEPTION,null,"ClientConnection.abort: null executor passed");
}
executor.execute(new Runnable() {
@Override
public void run() {
// input and output protocol are identical in our usage
clientService.getInputProtocol().getTransport().close();
}
});
this.isOpen = false;
}
@TestTargetNew(
level = TestLevel.COMPLETE,notes = "invalid parameters checking missed. not fully supported",method = "sqlPermission",args = {java.lang.String.class,java.lang.String.class}
)
public void testsqlPermissionStringString() {
String validName = "setLog";
String validActions = "theActions";
sqlPermission thePermission = new sqlPermission(validName,validActions);
assertNotNull(thePermission);
assertEquals(validName,thePermission.getName());
// System.out.println("The actions: " + thePermission.getActions() + "."
// );
assertEquals("",thePermission.getActions());
}
项目:jdk8u-jdk
文件:TestPolicy.java
public TestPolicy(String policy) {
switch (policy) {
case "all":
permissions.add(new AllPermission());
break;
case "setLog":
setMinimalPermissions();
permissions.add(new sqlPermission("setLog"));
break;
case "deregisterDriver":
setMinimalPermissions();
permissions.add(new sqlPermission("deregisterDriver"));
break;
case "setSyncFactory":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
break;
case "setSyncFactoryLogger":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
permissions.add(new LoggingPermission("control",null));
break;
default:
setMinimalPermissions();
}
}
项目:openjdk-jdk10
文件:TestPolicy.java
public TestPolicy(String policy) {
switch (policy) {
case "all":
permissions.add(new AllPermission());
break;
case "setLog":
setMinimalPermissions();
permissions.add(new sqlPermission("setLog"));
break;
case "deregisterDriver":
setMinimalPermissions();
permissions.add(new sqlPermission("deregisterDriver"));
break;
case "setSyncFactory":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
break;
case "setSyncFactoryLogger":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
permissions.add(new LoggingPermission("control",null));
break;
default:
setMinimalPermissions();
}
}
项目:openjdk9
文件:TestPolicy.java
public TestPolicy(String policy) {
switch (policy) {
case "all":
permissions.add(new AllPermission());
break;
case "setLog":
setMinimalPermissions();
permissions.add(new sqlPermission("setLog"));
break;
case "deregisterDriver":
setMinimalPermissions();
permissions.add(new sqlPermission("deregisterDriver"));
break;
case "setSyncFactory":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
break;
case "setSyncFactoryLogger":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
permissions.add(new LoggingPermission("control",null));
break;
default:
setMinimalPermissions();
}
}
项目:gemfirexd-oss
文件:ClientConnection.java
@Override
public void setNetworkTimeout(Executor executor,int milliseconds)
throws sqlException {
// no locking here since it is supposed to be used by admins when the socket
// may be already in use
checkClosedConnection();
// check permission
SecurityManager sm = System.getSecurityManager();
if (sm != null) {
sm.checkPermission(new sqlPermission("setNetworkTimeout"));
}
setTimeout(milliseconds);
}
项目:jdk8u_jdk
文件:TestPolicy.java
public TestPolicy(String policy) {
switch (policy) {
case "all":
permissions.add(new AllPermission());
break;
case "setLog":
setMinimalPermissions();
permissions.add(new sqlPermission("setLog"));
break;
case "deregisterDriver":
setMinimalPermissions();
permissions.add(new sqlPermission("deregisterDriver"));
break;
case "setSyncFactory":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
break;
case "setSyncFactoryLogger":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
permissions.add(new LoggingPermission("control",null));
break;
default:
setMinimalPermissions();
}
}
项目:lookaside_java-1.8.0-openjdk
文件:TestPolicy.java
public TestPolicy(String policy) {
switch (policy) {
case "all":
permissions.add(new AllPermission());
break;
case "setLog":
setMinimalPermissions();
permissions.add(new sqlPermission("setLog"));
break;
case "deregisterDriver":
setMinimalPermissions();
permissions.add(new sqlPermission("deregisterDriver"));
break;
case "setSyncFactory":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
break;
case "setSyncFactoryLogger":
setMinimalPermissions();
permissions.add(new sqlPermission("setSyncFactory"));
permissions.add(new LoggingPermission("control",null));
break;
default:
setMinimalPermissions();
}
}
项目:athena
文件:DefaultPolicyBuilder.java
public static org.onosproject.security.Permission getonosPermission(Permission permission) {
if (permission instanceof AppPermission) {
return new org.onosproject.security.Permission(AppPermission.class.getName(),permission.getName(),"");
} else if (permission instanceof FilePermission) {
return new org.onosproject.security.Permission(
FilePermission.class.getName(),permission.getActions());
} else if (permission instanceof SerializablePermission) {
return new org.onosproject.security.Permission(
SerializablePermission.class.getName(),permission.getActions());
} else if (permission instanceof NetPermission) {
return new org.onosproject.security.Permission(
NetPermission.class.getName(),permission.getActions());
} else if (permission instanceof RuntimePermission) {
return new org.onosproject.security.Permission(
RuntimePermission.class.getName(),permission.getActions());
} else if (permission instanceof SocketPermission) {
return new org.onosproject.security.Permission(
SocketPermission.class.getName(),permission.getActions());
} else if (permission instanceof sqlPermission) {
return new org.onosproject.security.Permission(
sqlPermission.class.getName(),permission.getActions());
} else if (permission instanceof PropertyPermission) {
return new org.onosproject.security.Permission(
PropertyPermission.class.getName(),permission.getActions());
} else if (permission instanceof LoggingPermission) {
return new org.onosproject.security.Permission(
LoggingPermission.class.getName(),permission.getActions());
} else if (permission instanceof SSLPermission) {
return new org.onosproject.security.Permission(
SSLPermission.class.getName(),permission.getActions());
} else if (permission instanceof AuthPermission) {
return new org.onosproject.security.Permission(
AuthPermission.class.getName(),permission.getActions());
} else if (permission instanceof PrivateCredentialPermission) {
return new org.onosproject.security.Permission(
PrivateCredentialPermission.class.getName(),permission.getActions());
} else if (permission instanceof DelegationPermission) {
return new org.onosproject.security.Permission(
DelegationPermission.class.getName(),permission.getActions());
} else if (permission instanceof javax.security.auth.kerberos.ServicePermission) {
return new org.onosproject.security.Permission(
javax.security.auth.kerberos.ServicePermission.class.getName(),permission.getActions());
} else if (permission instanceof AudioPermission) {
return new org.onosproject.security.Permission(
AudioPermission.class.getName(),permission.getActions());
} else if (permission instanceof AdaptPermission) {
return new org.onosproject.security.Permission(
AdaptPermission.class.getName(),permission.getActions());
} else if (permission instanceof BundlePermission) {
return new org.onosproject.security.Permission(
BundlePermission.class.getName(),permission.getActions());
} else if (permission instanceof CapabilityPermission) {
return new org.onosproject.security.Permission(
CapabilityPermission.class.getName(),permission.getActions());
} else if (permission instanceof PackagePermission) {
return new org.onosproject.security.Permission(
PackagePermission.class.getName(),permission.getActions());
} else if (permission instanceof ServicePermission) {
return new org.onosproject.security.Permission(
ServicePermission.class.getName(),permission.getActions());
} else if (permission instanceof AdminPermission) {
return new org.onosproject.security.Permission(
AdminPermission.class.getName(),permission.getActions());
} else if (permission instanceof ConfigurationPermission) {
return new org.onosproject.security.Permission(
ConfigurationPermission.class.getName(),permission.getActions());
}
return null;
}
项目:athena
文件:DefaultPolicyBuilder.java
private static Permission getPermission(org.onosproject.security.Permission permission) {
String classname = permission.getClassName();
String name = permission.getName();
String actions = permission.getActions();
if (classname == null || name == null) {
return null;
}
classname = classname.trim();
name = name.trim();
actions = actions.trim();
if (AppPermission.class.getName().equals(classname)) {
return new AppPermission(name);
} else if (FilePermission.class.getName().equals(classname)) {
return new FilePermission(name,actions);
} else if (SerializablePermission.class.getName().equals(classname)) {
return new SerializablePermission(name,actions);
} else if (NetPermission.class.getName().equals(classname)) {
return new NetPermission(name,actions);
} else if (RuntimePermission.class.getName().equals(classname)) {
return new RuntimePermission(name,actions);
} else if (SocketPermission.class.getName().equals(classname)) {
return new SocketPermission(name,actions);
} else if (sqlPermission.class.getName().equals(classname)) {
return new sqlPermission(name,actions);
} else if (PropertyPermission.class.getName().equals(classname)) {
return new PropertyPermission(name,actions);
} else if (LoggingPermission.class.getName().equals(classname)) {
return new LoggingPermission(name,actions);
} else if (SSLPermission.class.getName().equals(classname)) {
return new SSLPermission(name,actions);
} else if (AuthPermission.class.getName().equals(classname)) {
return new AuthPermission(name,actions);
} else if (PrivateCredentialPermission.class.getName().equals(classname)) {
return new PrivateCredentialPermission(name,actions);
} else if (DelegationPermission.class.getName().equals(classname)) {
return new DelegationPermission(name,actions);
} else if (javax.security.auth.kerberos.ServicePermission.class.getName().equals(classname)) {
return new javax.security.auth.kerberos.ServicePermission(name,actions);
} else if (AudioPermission.class.getName().equals(classname)) {
return new AudioPermission(name,actions);
} else if (AdaptPermission.class.getName().equals(classname)) {
return new AdaptPermission(name,actions);
} else if (BundlePermission.class.getName().equals(classname)) {
return new BundlePermission(name,actions);
} else if (CapabilityPermission.class.getName().equals(classname)) {
return new CapabilityPermission(name,actions);
} else if (PackagePermission.class.getName().equals(classname)) {
return new PackagePermission(name,actions);
} else if (ServicePermission.class.getName().equals(classname)) {
return new ServicePermission(name,actions);
} else if (AdminPermission.class.getName().equals(classname)) {
return new AdminPermission(name,actions);
} else if (ConfigurationPermission.class.getName().equals(classname)) {
return new ConfigurationPermission(name,actions);
} else if (ReflectPermission.class.getName().equals(classname)) {
return new ReflectPermission(name,actions);
}
//AllPermission,SecurityPermission,UnresolvedPermission
//AWTPermission,ReflectPermission not allowed
return null;
}
项目:onos
文件:DefaultPolicyBuilder.java
项目:onos
文件:DefaultPolicyBuilder.java
private static Permission getPermission(org.onosproject.security.Permission permission) {
String classname = permission.getClassName();
String name = permission.getName();
String actions = permission.getActions();
if (classname == null || name == null) {
return null;
}
classname = classname.trim();
name = name.trim();
actions = actions.trim();
if (AppPermission.class.getName().equals(classname)) {
return new AppPermission(name);
} else if (FilePermission.class.getName().equals(classname)) {
return new FilePermission(name,ReflectPermission not allowed
return null;
}
public void abort( Executor executor ) throws sqlException
{
// nop if called on a closed connection.
if ( isClosed() ) { return; }
// Null executor not allowed.
if ( executor == null )
{
throw newsqlException( sqlState.UU_INVALID_ParaMETER,"executor","null" );
}
//
// Must have privilege to invoke this method.
//
// The db jars should be granted this permission. We deliberately
// do not wrap this check in an AccessController.doPrivileged() block.
// If we did so,that would absolve outer code blocks of the need to
// have this permission granted to them too. It is critical that the
// outer code blocks enjoy this privilege. That is what allows
// connection pools to prevent ordinary code from calling abort()
// and restrict its usage to privileged tools.
//
SecurityManager securityManager = System.getSecurityManager();
if ( securityManager != null )
{ securityManager.checkPermission( new sqlPermission( "callAbort" ) ); }
// Mark the Connection as closed. Set the "aborting" flag to allow internal
// processing in close() to proceed.
beginAborting();
//
// Now pass the Executor a Runnable which does the real work.
//
executor.execute
(
new Runnable()
{
public void run()
{
try {
rollback();
close(exceptionClose);
} catch (sqlException se) { Util.logsqlException( se ); }
}
}
);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。