Polishing.
Expose factory methods for easier capabilities creation. See gh-575.
This commit is contained in:
@@ -546,7 +546,6 @@ public class Policy {
|
||||
/**
|
||||
* Deprecated: Previous capability literal before it was split into
|
||||
* {@link #CREATE} and {@link #UPDATE}.
|
||||
*
|
||||
* @deprecated since 2.3 and Vault 0.5.
|
||||
*/
|
||||
@Deprecated
|
||||
@@ -595,6 +594,27 @@ public class Policy {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return all capabilities ({@link #CREATE},{@link #READ},{@link #UPDATE},
|
||||
* {@link #DELETE}, {@link #LIST}) for regular CRUD operations.
|
||||
* @return all CRUD operations.
|
||||
* @since 2.3
|
||||
*/
|
||||
public static List<Capability> crud() {
|
||||
return Arrays.asList(CREATE, READ, UPDATE, DELETE, LIST);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return all capabilities ({@link #CREATE},{@link #READ},{@link #UPDATE},
|
||||
* {@link #DELETE}, {@link #LIST}) for regular CRUD operations including
|
||||
* {@link #SUDO}.
|
||||
* @return all CRUD operations including SUDO.
|
||||
* @since 2.3
|
||||
*/
|
||||
public static List<Capability> crudAndSudo() {
|
||||
return Arrays.asList(CREATE, READ, UPDATE, DELETE, LIST, SUDO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static class PolicySerializer extends JsonSerializer<Policy> {
|
||||
|
||||
@@ -129,4 +129,18 @@ class PolicySerializationUnitTests {
|
||||
assertThat(rule.getMinWrappingTtl()).isEqualTo(Duration.ofHours(1));
|
||||
}
|
||||
|
||||
@Test
|
||||
void crudShouldReturnCrudCapabilities() {
|
||||
|
||||
assertThat(Policy.BuiltinCapabilities.crud()).hasSize(5).contains(Policy.BuiltinCapabilities.CREATE)
|
||||
.doesNotContain(Policy.BuiltinCapabilities.SUDO);
|
||||
}
|
||||
|
||||
@Test
|
||||
void sudoShouldReturnCrudAndSudoCapabilities() {
|
||||
|
||||
assertThat(Policy.BuiltinCapabilities.crudAndSudo()).hasSize(6).contains(Policy.BuiltinCapabilities.CREATE)
|
||||
.contains(Policy.BuiltinCapabilities.SUDO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user