@Named @Singleton public class RepositoryPermissionChecker extends Object
Constructor and Description |
---|
RepositoryPermissionChecker(org.sonatype.nexus.security.SecurityHelper securityHelper,
org.sonatype.nexus.selector.SelectorManager selectorManager) |
Modifier and Type | Method and Description |
---|---|
void |
ensureUserCanAdmin(String action,
org.sonatype.nexus.repository.Repository repository)
Ensures that the current user has an administrative privilege with the given action to the given repository.
|
void |
ensureUserCanAdmin(String action,
String format,
String repositoryName) |
void |
ensureUserHasAnyPermissionOrAdminAccess(Iterable<org.apache.shiro.authz.Permission> permissions,
String action,
Iterable<org.sonatype.nexus.repository.Repository> repositories)
Ensures the user has any of the supplied permissions, or a RepositoryAdminPermission with the action to any
of the repositories.
|
List<org.sonatype.nexus.repository.Repository> |
userCanBrowseRepositories(Iterable<org.sonatype.nexus.repository.Repository> repositories) |
List<org.sonatype.nexus.repository.Repository> |
userCanBrowseRepositories(org.sonatype.nexus.repository.Repository... repositories) |
boolean |
userCanDeleteInRepository(org.sonatype.nexus.repository.Repository repository) |
boolean |
userCanReadOrBrowse(org.sonatype.nexus.repository.Repository repository)
WARNING: This method should _only_ be used to check a single repository to prevent performance problems with large
numbers of content selectors.
|
List<org.sonatype.nexus.repository.Repository> |
userHasRepositoryAdminPermission(Iterable<org.sonatype.nexus.repository.Repository> repositories,
String... actions) |
@Inject public RepositoryPermissionChecker(org.sonatype.nexus.security.SecurityHelper securityHelper, org.sonatype.nexus.selector.SelectorManager selectorManager)
public boolean userCanReadOrBrowse(org.sonatype.nexus.repository.Repository repository)
public boolean userCanDeleteInRepository(org.sonatype.nexus.repository.Repository repository)
repository
- public List<org.sonatype.nexus.repository.Repository> userCanBrowseRepositories(org.sonatype.nexus.repository.Repository... repositories)
repositories
- to test against browse permissions and content selector permissionspublic void ensureUserHasAnyPermissionOrAdminAccess(Iterable<org.apache.shiro.authz.Permission> permissions, String action, Iterable<org.sonatype.nexus.repository.Repository> repositories)
permissions
- the permissions to check firstaction
- the action to use in the admin permissionrepositories
- the repositories to check the action againstorg.apache.shiro.authz.AuthorizationException
- if the user doesn't have permissionpublic List<org.sonatype.nexus.repository.Repository> userCanBrowseRepositories(Iterable<org.sonatype.nexus.repository.Repository> repositories)
repositories
- to test against browse permissions and content selector permissionspublic List<org.sonatype.nexus.repository.Repository> userHasRepositoryAdminPermission(Iterable<org.sonatype.nexus.repository.Repository> repositories, String... actions)
repositories
- to test the actions permission againstactions
- the repository-admin actionspublic void ensureUserCanAdmin(String action, org.sonatype.nexus.repository.Repository repository)
org.apache.shiro.authz.AuthorizationException
Copyright © 2008–2021 Sonatype, Inc.. All rights reserved.