Package hudson.security
Class AuthorizationMatrixProperty
- java.lang.Object
-
- hudson.model.JobProperty<Job<?,?>>
-
- hudson.security.AuthorizationMatrixProperty
-
- All Implemented Interfaces:
ExtensionPoint
,Describable<JobProperty<?>>
,ReconfigurableDescribable<JobProperty<?>>
,BuildStep
,AuthorizationContainer
,AuthorizationProperty
public class AuthorizationMatrixProperty extends JobProperty<Job<?,?>> implements AuthorizationProperty
JobProperty
to associate ACL for each project.Once created (and initialized), this object becomes immutable.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AuthorizationMatrixProperty.ConverterImpl
PersistAuthorizationMatrixProperty
as a list of IDs that representgetGrantedPermissionEntries()
.static class
AuthorizationMatrixProperty.DescriptorImpl
static class
AuthorizationMatrixProperty.ItemListenerImpl
Ensure that the user creating a job has Read and Configure permissions-
Nested classes/interfaces inherited from interface org.jenkinsci.plugins.matrixauth.AuthorizationContainer
AuthorizationContainer.IdStrategyComparator, AuthorizationContainer.PermissionEntryComparator
-
Nested classes/interfaces inherited from interface org.jenkinsci.plugins.matrixauth.AuthorizationProperty
AuthorizationProperty.DslEntry, AuthorizationProperty.DslGroup, AuthorizationProperty.DslUser, AuthorizationProperty.DslUserOrGroup
-
Nested classes/interfaces inherited from interface hudson.tasks.BuildStep
BuildStep.PublisherList
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
-
Field Summary
-
Fields inherited from class hudson.model.JobProperty
owner
-
Fields inherited from interface hudson.tasks.BuildStep
BUILDERS, PUBLISHERS
-
-
Constructor Summary
Constructors Constructor Description AuthorizationMatrixProperty(List<AuthorizationProperty.DslEntry> entries)
Exists for reflective Job DSL / Pipeline use only.AuthorizationMatrixProperty(Map<Permission,Set<String>> grantedPermissions)
Deprecated.AuthorizationMatrixProperty(Map<Permission,Set<PermissionEntry>> grantedPermissions, InheritanceStrategy inheritanceStrategy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SidACL
getACL()
Permission
getEditingPermission()
List<AuthorizationProperty.DslEntry>
getEntries()
Getter supporting nicer DSL syntax for Job DSL and Pipeline job property definitions.Map<Permission,Set<PermissionEntry>>
getGrantedPermissionEntries()
Returns a live modifiable map of permissions.Set<String>
getGroups()
Internal only: Returns all recorded (possible) group sids to allow populatingAuthorizationStrategy.getGroups()
.InheritanceStrategy
getInheritanceStrategy()
List<String>
getPermissions()
Getter corresponding to databound contructor for Pipeline snippetizer.void
recordGroup(String sid)
Internal only: Record use of a (possible) group sid to be later returned inAuthorizationContainer.getGroups()
.void
setInheritanceStrategy(InheritanceStrategy inheritanceStrategy)
protected void
setOwner(Job<?,?> owner)
-
Methods inherited from class hudson.model.JobProperty
getDescriptor, getJobAction, getJobActions, getJobOverrides, getProjectAction, getProjectActions, getRequiredMonitorService, getSubTasks, perform, prebuild, reconfigure
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jenkinsci.plugins.matrixauth.AuthorizationContainer
add, add, add, getAllPermissionEntries, getAllSIDs, getDescriptor, getGrantedPermissions, hasExplicitPermission, hasExplicitPermission, hasPermission, hasPermission
-
Methods inherited from interface org.jenkinsci.plugins.matrixauth.AuthorizationProperty
isBlocksInheritance, setBlocksInheritance, setEntries
-
-
-
-
Constructor Detail
-
AuthorizationMatrixProperty
public AuthorizationMatrixProperty(Map<Permission,Set<PermissionEntry>> grantedPermissions, InheritanceStrategy inheritanceStrategy)
- Since:
- 3.0
-
AuthorizationMatrixProperty
@Deprecated public AuthorizationMatrixProperty(Map<Permission,Set<String>> grantedPermissions)
Deprecated.
-
AuthorizationMatrixProperty
@Restricted(org.kohsuke.accmod.restrictions.DoNotUse.class) @DataBoundConstructor public AuthorizationMatrixProperty(List<AuthorizationProperty.DslEntry> entries)
Exists for reflective Job DSL / Pipeline use only.
-
-
Method Detail
-
getPermissions
public List<String> getPermissions()
Getter corresponding to databound contructor for Pipeline snippetizer.
-
getGroups
public Set<String> getGroups()
Description copied from interface:AuthorizationContainer
Internal only: Returns all recorded (possible) group sids to allow populatingAuthorizationStrategy.getGroups()
.- Specified by:
getGroups
in interfaceAuthorizationContainer
-
recordGroup
public void recordGroup(String sid)
Description copied from interface:AuthorizationContainer
Internal only: Record use of a (possible) group sid to be later returned inAuthorizationContainer.getGroups()
.- Specified by:
recordGroup
in interfaceAuthorizationContainer
-
getGrantedPermissionEntries
public Map<Permission,Set<PermissionEntry>> getGrantedPermissionEntries()
Description copied from interface:AuthorizationContainer
Returns a live modifiable map of permissions. This return value needs to be treated as unmodifiable from shortly after object construction (even though it isn't for practical reasons).- Specified by:
getGrantedPermissionEntries
in interfaceAuthorizationContainer
-
getEditingPermission
public Permission getEditingPermission()
- Specified by:
getEditingPermission
in interfaceAuthorizationContainer
-
getEntries
@Restricted(org.kohsuke.accmod.restrictions.DoNotUse.class) public List<AuthorizationProperty.DslEntry> getEntries()
Description copied from interface:AuthorizationProperty
Getter supporting nicer DSL syntax for Job DSL and Pipeline job property definitions.- Specified by:
getEntries
in interfaceAuthorizationProperty
- Returns:
- a list of
AuthorizationProperty.DslEntry
-
getACL
public SidACL getACL()
-
setInheritanceStrategy
@DataBoundSetter public void setInheritanceStrategy(InheritanceStrategy inheritanceStrategy)
- Specified by:
setInheritanceStrategy
in interfaceAuthorizationProperty
-
getInheritanceStrategy
public InheritanceStrategy getInheritanceStrategy()
- Specified by:
getInheritanceStrategy
in interfaceAuthorizationProperty
-
setOwner
protected void setOwner(Job<?,?> owner)
- Overrides:
setOwner
in classJobProperty<Job<?,?>>
-
-