diff options
Diffstat (limited to 'vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java')
-rw-r--r-- | vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java index 7f16505c500..d5b772e5bab 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java @@ -150,7 +150,7 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { @Override public void addRoleMember(AthenzRole role, AthenzIdentity member, Optional<String> reason) { URI uri = zmsUrl.resolve(String.format("domain/%s/role/%s/member/%s", role.domain().getName(), role.roleName(), member.getFullName())); - MembershipEntity membership = new MembershipEntity.RoleMembershipEntity(member.getFullName(), true, role.roleName(), null); + MembershipEntity membership = new MembershipEntity.RoleMembershipEntity(member.getFullName(), true, role.roleName(), null, true); RequestBuilder requestBuilder = RequestBuilder.put(uri) @@ -176,7 +176,7 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { .build(); return execute(request, response -> { MembershipEntity membership = readEntity(response, MembershipEntity.GroupMembershipEntity.class); - return membership.isMember; + return membership.isMember && membership.approved; }); } @@ -436,6 +436,20 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { return QuotaUsage.calculateUsage(usageEntity, quotaEntity); } + @Override + public void deleteSubdomain(AthenzDomain parent, String name) { + URI uri = zmsUrl.resolve(String.format("subdomain/%s/%s", parent.getName(), name)); + HttpUriRequest request = RequestBuilder.delete(uri).build(); + execute(request, response -> readEntity(response, Void.class)); + } + + @Override + public void deletePolicy(AthenzDomain domain, String athenzPolicy) { + var uri = zmsUrl.resolve(String.format("domain/%s/policy/%s", domain.getName(), athenzPolicy)); + var request = RequestBuilder.delete(uri).build(); + execute(request, response -> readEntity(response, Void.class)); + } + public AthenzRoleInformation getFullRoleInformation(AthenzRole role) { var uri = zmsUrl.resolve(String.format("domain/%s/role/%s?pending=true&auditLog=true", role.domain().getName(), role.roleName())); var request = RequestBuilder.get(uri).build(); |