Authorizerclass GenericAuthorizer extends java.lang.Object implements Authorizer
| Modifier and Type | Field | Description |
|---|---|---|
private static int |
FULL_ACCESS |
|
private LanguageConnectionContext |
lcc |
|
private static int |
NO_ACCESS |
|
private static int |
READ_ACCESS |
|
(package private) boolean |
readOnlyConnection |
|
private int |
userAccessLevel |
CREATE_ROLE_PRIV, CREATE_SCHEMA_PRIV, DELETE_PRIV, DROP_ROLE_PRIV, DROP_SCHEMA_PRIV, EXECUTE_PRIV, INSERT_PRIV, JAR_WRITE_OP, MIN_SELECT_PRIV, MODIFY_SCHEMA_PRIV, NULL_PRIV, PRIV_TYPE_COUNT, PROPERTY_WRITE_OP, PUBLIC_AUTHORIZATION_ID, REFERENCES_PRIV, SELECT_PRIV, SQL_ARBITARY_OP, SQL_CALL_OP, SQL_DDL_OP, SQL_SELECT_OP, SQL_WRITE_OP, SYSTEM_AUTHORIZATION_ID, TRIGGER_PRIV, UPDATE_PRIV, USAGE_PRIV| Constructor | Description |
|---|---|
GenericAuthorizer(LanguageConnectionContext lcc) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
authorize(int operation) |
Used for operations that do not involve tables or routines.
|
void |
authorize(java.util.List<StatementPermission> requiredPermissionsList,
Activation activation) |
Verify the connected user possesses the indicated permissions
|
void |
authorize(Activation activation,
int operation) |
Verify the connected user is authorized to perform the requested
operation.
|
private boolean |
connectionMustRemainReadOnly() |
|
private static StandardException |
externalRoutineException(int operation,
int sqlAllowed) |
Throw an exception if the user does not have all of the required permissions.
|
private int |
getDefaultAccessLevel() |
|
private void |
getUserAccessLevel() |
|
boolean |
isReadOnlyConnection() |
Get the readOnly status for this authorizer's connection.
|
void |
refresh() |
Refresh this authorizer to reflect a change in the database
permissions.
|
void |
setReadOnlyConnection(boolean on,
boolean authorize) |
Set the readOnly status for this authorizer's connection.
|
private boolean |
userOnAccessList(java.lang.String listName) |
private static final int NO_ACCESS
private static final int READ_ACCESS
private static final int FULL_ACCESS
private int userAccessLevel
boolean readOnlyConnection
private final LanguageConnectionContext lcc
GenericAuthorizer(LanguageConnectionContext lcc) throws StandardException
StandardExceptionprivate boolean connectionMustRemainReadOnly()
public void authorize(int operation)
throws StandardException
authorize in interface Authorizeroperation - the enumeration code for the requsted operation.StandardException - Thrown if the operation is not allowedAuthorizer.authorize(int)public void authorize(Activation activation, int operation) throws StandardException
Authorizerauthorize in interface Authorizeractivation - holds the list of tables, columns, and routines used.operation - the enumeration code for the requsted operation.StandardException - Thrown if the operation is not allowedAuthorizer.authorize(int)public void authorize(java.util.List<StatementPermission> requiredPermissionsList, Activation activation) throws StandardException
Authorizerauthorize in interface AuthorizerrequiredPermissionsList - the required permissionsactivation - holds the execution logicStandardException - Thrown if the operation is not allowedprivate static StandardException externalRoutineException(int operation, int sqlAllowed)
private void getUserAccessLevel()
throws StandardException
StandardExceptionprivate int getDefaultAccessLevel()
throws StandardException
StandardExceptionprivate boolean userOnAccessList(java.lang.String listName)
throws StandardException
StandardExceptionpublic boolean isReadOnlyConnection()
AuthorizerisReadOnlyConnection in interface AuthorizerAuthorizer.isReadOnlyConnection()public void setReadOnlyConnection(boolean on,
boolean authorize)
throws StandardException
AuthorizersetReadOnlyConnection in interface Authorizeron - true means set the connection to read only mode,
false means set the connection to read wrte mode.authorize - true means to verify the caller has authority
to set the connection and false means do not check.StandardException - Thrown if the operation is not allowedAuthorizer.isReadOnlyConnection()public final void refresh()
throws StandardException
Authorizerrefresh in interface AuthorizerStandardException - Thrown if the operation is not allowedAuthorizer.refresh()Apache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.