|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecthudson.security.Permission
public final class Permission
Permission, which represents activity that requires a security privilege.
Each permission is represented by a specific instance of Permission
.
https://wiki.jenkins-ci.org/display/JENKINS/Making+your+plugin+behave+in+secured+Jenkins
Field Summary | |
---|---|
static Permission |
CONFIGURE
Generic configuration access. |
static Permission |
CREATE
Generic create access. |
static Permission |
DELETE
Generic delete access. |
org.jvnet.localizer.Localizable |
description
Human-readable description of this permission. |
boolean |
enabled
Whether this permission is available for use. |
static Permission |
FULL_CONTROL
Deprecated. since 2009-01-23. Use Jenkins.ADMINISTER . |
PermissionGroup |
group
|
static PermissionGroup |
GROUP
|
static Permission |
HUDSON_ADMINISTER
Deprecated. since 2009-01-23. Access Jenkins.ADMINISTER instead. |
static PermissionGroup |
HUDSON_PERMISSIONS
Deprecated. since 2009-01-23. Access Jenkins.PERMISSIONS instead. |
static Comparator<Permission> |
ID_COMPARATOR
Comparator that orders Permission objects based on their ID. |
Permission |
impliedBy
Bundled Permission that also implies this permission. |
String |
name
Human readable ID of the permission. |
Class |
owner
|
static Permission |
READ
Generic read access. |
static Permission |
UPDATE
Generic update access. |
static Permission |
WRITE
Generic write access. |
Constructor Summary | |
---|---|
Permission(PermissionGroup group,
String name,
org.jvnet.localizer.Localizable description,
Permission impliedBy)
Deprecated. as of 1.421 Use Permission(PermissionGroup, String, Localizable, Permission, PermissionScope) |
|
Permission(PermissionGroup group,
String name,
org.jvnet.localizer.Localizable description,
Permission impliedBy,
boolean enable)
Deprecated. as of 1.421 Use Permission(PermissionGroup, String, Localizable, Permission, boolean, PermissionScope[]) |
|
Permission(PermissionGroup group,
String name,
org.jvnet.localizer.Localizable description,
Permission impliedBy,
boolean enable,
PermissionScope[] scopes)
Defines a new permission. |
|
Permission(PermissionGroup group,
String name,
org.jvnet.localizer.Localizable description,
Permission impliedBy,
PermissionScope scope)
|
|
Permission(PermissionGroup group,
String name,
Permission impliedBy)
Deprecated. since 1.257. Use Permission(PermissionGroup, String, Localizable, Permission) |
Method Summary | |
---|---|
static Permission |
fromId(String id)
Convert the ID representation into Permission object. |
static List<Permission> |
getAll()
Returns all the Permission s available in the system. |
boolean |
getEnabled()
|
String |
getId()
Returns the string representation of this Permission ,
which can be converted back to Permission via the
fromId(String) method. |
boolean |
isContainedBy(PermissionScope s)
Checks if this permission is contained in the specified scope, (either directly or indirectly.) |
void |
setEnabled(boolean enable)
|
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final Comparator<Permission> ID_COMPARATOR
Permission
objects based on their ID.
public final Class owner
public final PermissionGroup group
public final String name
This name should uniquely determine a permission among its owner class. The name must be a valid Java identifier.
The expected naming convention is something like "BrowseWorkspace".
public final org.jvnet.localizer.Localizable description
If null, there will be no description text.
public final Permission impliedBy
Permission
that also implies this permission.
This allows us to organize permissions in a hierarchy, so that for example we can say "view workspace" permission is implied by the (broader) "read" permission.
The idea here is that for most people, access control based on such broad permission bundle is good enough, and those few that need finer control can do so.
public boolean enabled
This allows us to dynamically enable or disable the visibility of permissions, so administrators can control the complexity of their permission matrix.
public static final PermissionGroup HUDSON_PERMISSIONS
Jenkins.PERMISSIONS
instead.PermissionGroup
for Jenkins
.
public static final Permission HUDSON_ADMINISTER
Jenkins.ADMINISTER
instead.Permission
that represents the God-like access. Equivalent of Unix root.
All permissions are eventually implied by this permission.
public static final PermissionGroup GROUP
public static final Permission FULL_CONTROL
Jenkins.ADMINISTER
.HUDSON_ADMINISTER
but such a distinction doesn't make sense
any more, so deprecated.
public static final Permission READ
public static final Permission WRITE
public static final Permission CREATE
public static final Permission UPDATE
public static final Permission DELETE
public static final Permission CONFIGURE
Constructor Detail |
---|
public Permission(PermissionGroup group, String name, org.jvnet.localizer.Localizable description, Permission impliedBy, boolean enable, PermissionScope[] scopes)
group
- Permissions are grouped per classes that own them. Specify the permission group
created for that class. The idiom is:
class Foo { private static final PermissionGroup PERMISSIONS = new PermissionGroup(Foo.class,...); public static final Permission ABC = new Permission(PERMISSION,...) ; }Because of the classloading problems and the difficulty for Hudson to enumerate them, the permission constants really need to be static field of the owner class.
name
- See name
.description
- See description
.impliedBy
- See impliedBy
.public Permission(PermissionGroup group, String name, org.jvnet.localizer.Localizable description, Permission impliedBy, PermissionScope scope)
public Permission(PermissionGroup group, String name, org.jvnet.localizer.Localizable description, Permission impliedBy, boolean enable)
Permission(PermissionGroup, String, Localizable, Permission, boolean, PermissionScope[])
public Permission(PermissionGroup group, String name, org.jvnet.localizer.Localizable description, Permission impliedBy)
Permission(PermissionGroup, String, Localizable, Permission, PermissionScope)
public Permission(PermissionGroup group, String name, Permission impliedBy)
Permission(PermissionGroup, String, Localizable, Permission)
Method Detail |
---|
public boolean isContainedBy(PermissionScope s)
public String getId()
Permission
,
which can be converted back to Permission
via the
fromId(String)
method.
This string representation is suitable for persistence.
fromId(String)
public static Permission fromId(String id)
Permission
object.
getId()
public String toString()
toString
in class Object
public void setEnabled(boolean enable)
public boolean getEnabled()
public static List<Permission> getAll()
Permission
s available in the system.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |