Package org.yamcs.security
Class User
java.lang.Object
org.yamcs.security.Account
org.yamcs.security.User
A user contains identifying information and a convenient set of methods to perform access control.
Users may be assigned two kinds of different privileges:
- System privileges that grant the user the right to perform an action on any object.
- Object privileges that grant the user the right to perform an action on a specific object.
superuser may have been granted to a user. Users with this attribute are not
subjected to privilege checking (i.e. they are allowed everything, even without being assigned privileges).-
Field Summary
Fields inherited from class org.yamcs.security.Account
active, confirmationTime, createdBy, creationTime, displayName, id, lastLoginTime, name -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddClearanceListener(ClearanceListener listener) voidaddIdentity(String provider, String identity) voidaddObjectPrivilege(ObjectPrivilege objectPrivilege, boolean external) voidAdd a role to this user.voidaddSystemPrivilege(SystemPrivilege systemPrivilege, boolean external) voidResets user privileges to only those that are externally defined.voiddeleteIdentity(String provider) voiddeleteRole(String role) getEmail()getHash()getRoles()booleanhasObjectPrivilege(ObjectPrivilegeType type, String object) booleanhasParameterPrivilege(ObjectPrivilegeType type, Parameter parameter) Special privilege check helper method for parameter permissions, allowing to check against both the qualified name of a parameter and its OPS name (if any), returning true when the user has the privilege (OPS name: in XTCE defined as alias for namespace "MDB:OPS Name")booleanhasSystemPrivilege(SystemPrivilege systemPrivilege) booleanbooleanvoidremoveClearanceListener(ClearanceListener listener) voidsetClearance(Clearance clearance) voidvoidvoidsetRoles(Collection<String> roles) voidsetSuperuser(boolean superuser) toTuple(boolean forUpdate) Methods inherited from class org.yamcs.security.Account
confirm, equals, getConfirmationTime, getCreatedBy, getCreationTime, getDisplayName, getId, getLastLoginTime, getName, hashCode, isActive, isBuiltIn, newRecordBuilder, setActive, setDisplayName, setName, toString
-
Constructor Details
-
User
-
-
Method Details
-
getEmail
-
getHash
-
isExternallyManaged
public boolean isExternallyManaged() -
addIdentity
-
getIdentityEntrySet
-
deleteIdentity
-
getClearance
-
setClearance
-
getRoles
-
setRoles
-
addRole
Add a role to this user. If marked as external, this role assignment is not persisted to Yamcs DB. -
deleteRole
-
isSuperuser
public boolean isSuperuser() -
setSuperuser
public void setSuperuser(boolean superuser) -
setEmail
-
setHash
-
getSystemPrivileges
-
getObjectPrivileges
-
getObjectPrivileges
-
addSystemPrivilege
-
addObjectPrivilege
-
clearDirectoryPrivileges
public void clearDirectoryPrivileges()Resets user privileges to only those that are externally defined. -
hasSystemPrivilege
-
hasObjectPrivilege
-
hasParameterPrivilege
Special privilege check helper method for parameter permissions, allowing to check against both the qualified name of a parameter and its OPS name (if any), returning true when the user has the privilege (OPS name: in XTCE defined as alias for namespace "MDB:OPS Name")- Parameters:
type- parameter privilege type (either ObjectPrivilegeType.ReadParameter or ObjectPrivilegeType.WriteParameter)parameter- parameter to check against- Returns:
- whether the user has the given privilege type for the parameter
-
addClearanceListener
-
removeClearanceListener
-
toTuple
-