@@ -64,6 +64,8 @@ public class ArchivaRoleConstants | |||
public static final String OPERATION_REPOSITORY_UPLOAD = "archiva-upload-repository"; | |||
public static final String OPERATION_FILE_UPLOAD = "archiva-upload-file"; | |||
public static final String OPERATION_REPOSITORY_DELETE = "archiva-delete-artifact"; | |||
public static final String OPERATION_MERGE_REPOSITORY = "archiva-merge-repository"; |
@@ -83,6 +83,11 @@ | |||
<name>archiva-upload-repository</name> | |||
<description>Upload Archiva Repository</description> | |||
</operation> | |||
<operation> | |||
<id>archiva-upload-file</id> | |||
<name>archiva-upload-file</name> | |||
<description>Upload File to Archiva</description> | |||
</operation> | |||
<operation> | |||
<id>archiva-access-repository</id> | |||
<name>archiva-access-repository</name> | |||
@@ -257,6 +262,12 @@ | |||
<operation>archiva-upload-repository</operation> | |||
<resource>${resource}</resource> | |||
</permission> | |||
<permission> | |||
<id>archiva-upload-file</id> | |||
<name>Archiva Upload File to Archiva</name> | |||
<operation>archiva-upload-file</operation> | |||
<resource>global</resource> | |||
</permission> | |||
<permission> | |||
<id>archiva-view-audit-logs</id> | |||
<name>Archiva View Audit Logs</name> |
@@ -149,7 +149,7 @@ public interface BrowseService | |||
@Path("metadata/{g}/{a}/{v}/{key}/{value}") | |||
@PUT | |||
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML }) | |||
@RedbackAuthorization(noPermission = false, noRestriction = false, permissions = "archiva-add-metadata") | |||
@RedbackAuthorization( permissions = "archiva-add-metadata", resource = "{repositoryId}") | |||
ActionStatus addMetadata( @PathParam("g") String groupId, @PathParam("a") String artifactId, | |||
@PathParam("v") String version, @PathParam("key") String key, @PathParam("value") String value, | |||
@QueryParam("repositoryId") String repositoryId ) | |||
@@ -158,7 +158,7 @@ public interface BrowseService | |||
@Path("metadata/{g}/{a}/{v}/{key}") | |||
@DELETE | |||
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML }) | |||
@RedbackAuthorization(noPermission = false, noRestriction = false, permissions = "archiva-add-metadata") | |||
@RedbackAuthorization( permissions = "archiva-add-metadata", resource = "{repositoryId}") | |||
ActionStatus deleteMetadata( @PathParam("g") String groupId, @PathParam("a") String artifactId, | |||
@PathParam("v") String version, @PathParam("key") String key, | |||
@QueryParam("repositoryId") String repositoryId ) | |||
@@ -166,7 +166,7 @@ public interface BrowseService | |||
@Path("importMetadata") | |||
@POST | |||
@RedbackAuthorization(noPermission = false, noRestriction = false, permissions = "archiva-add-metadata") | |||
@RedbackAuthorization( permissions = "archiva-add-metadata", resource = "{repository}") | |||
ActionStatus importMetadata( MetadataAddRequest metadataAddRequest, @QueryParam("repository") String repository ) | |||
throws ArchivaRestServiceException; | |||
@@ -48,7 +48,7 @@ public interface MergeRepositoriesService | |||
@Path ("mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}") | |||
@GET | |||
@Produces ({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML }) | |||
@RedbackAuthorization (permissions = ArchivaRoleConstants.OPERATION_MERGE_REPOSITORY) | |||
@RedbackAuthorization (permissions = ArchivaRoleConstants.OPERATION_MERGE_REPOSITORY, resource = "{sourceRepositoryId}") | |||
List<Artifact> getMergeConflictedArtifacts( @PathParam ("sourceRepositoryId") String sourceRepositoryId, | |||
@PathParam ("targetRepositoryId") String targetRepositoryId ) | |||
throws ArchivaRestServiceException; | |||
@@ -59,7 +59,7 @@ public interface MergeRepositoriesService | |||
*/ | |||
@Path ("mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}") | |||
@GET | |||
@RedbackAuthorization (permissions = ArchivaRoleConstants.OPERATION_MERGE_REPOSITORY) | |||
@RedbackAuthorization (permissions = ArchivaRoleConstants.OPERATION_MERGE_REPOSITORY, resource = "{sourceRepositoryId}") | |||
void mergeRepositories( @PathParam ("sourceRepositoryId") String sourceRepositoryId, | |||
@PathParam ("targetRepositoryId") String targetRepositoryId, | |||
@PathParam ("skipConflicts") boolean skipConflicts ) |
@@ -48,14 +48,14 @@ public interface FileUploadService | |||
@POST | |||
@Consumes( MediaType.MULTIPART_FORM_DATA ) | |||
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_REPOSITORY_UPLOAD ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_FILE_UPLOAD ) | |||
FileMetadata post( MultipartBody multipartBody ) | |||
throws ArchivaRestServiceException; | |||
@Path( "{fileName}" ) | |||
@DELETE | |||
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_REPOSITORY_UPLOAD ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_FILE_UPLOAD ) | |||
Boolean deleteFile( @PathParam( "fileName" ) String fileName ) | |||
throws ArchivaRestServiceException; | |||
@@ -63,7 +63,7 @@ public interface FileUploadService | |||
@Path( "sessionFileMetadatas" ) | |||
@GET | |||
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_REPOSITORY_UPLOAD ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_FILE_UPLOAD ) | |||
List<FileMetadata> getSessionFileMetadatas() | |||
throws ArchivaRestServiceException; | |||
@@ -80,7 +80,7 @@ public interface FileUploadService | |||
@Path( "clearUploadedFiles" ) | |||
@GET | |||
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_REPOSITORY_UPLOAD ) | |||
@RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_FILE_UPLOAD ) | |||
Boolean clearUploadedFiles() | |||
throws ArchivaRestServiceException; | |||