diff options
author | Morten Tokle <mortent@verizonmedia.com> | 2021-06-03 11:19:25 +0200 |
---|---|---|
committer | Morten Tokle <mortent@verizonmedia.com> | 2021-06-03 11:19:25 +0200 |
commit | d4a0b5486f49a24f2c002a813cdeba3674ce21ad (patch) | |
tree | 8bc9ed21c6f74a0f29ac83d57c5bf3e207436ec0 /controller-api/src | |
parent | 2e331d2a6096920bd268efe325b5d96633c189ad (diff) |
Implement listMembers
Diffstat (limited to 'controller-api/src')
2 files changed, 10 insertions, 1 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/AthenzAccessControlService.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/AthenzAccessControlService.java index 1472f03ebca..233759f47a7 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/AthenzAccessControlService.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/AthenzAccessControlService.java @@ -10,6 +10,7 @@ import com.yahoo.vespa.athenz.client.zms.ZmsClient; import java.time.Instant; import java.util.Collection; import java.util.List; +import java.util.stream.Collectors; public class AthenzAccessControlService implements AccessControlService { @@ -34,7 +35,11 @@ public class AthenzAccessControlService implements AccessControlService { } @Override + // Return list of approved members (users, excluding services) of data plane role public Collection<AthenzUser> listMembers() { - throw new UnsupportedOperationException("Not implemented"); + return zmsClient.listMembers(dataPlaneAccessRole) + .stream().filter(AthenzUser.class::isInstance) + .map(AthenzUser.class::cast) + .collect(Collectors.toList()); } } diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZmsClientMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZmsClientMock.java index 6509bd40ebf..deeecf217e7 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZmsClientMock.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZmsClientMock.java @@ -156,6 +156,10 @@ public class ZmsClientMock implements ZmsClient { public void approvePendingRoleMembership(AthenzRole athenzRole, AthenzUser athenzUser, Instant expiry) { } + @Override + public List<AthenzIdentity> listMembers(AthenzRole athenzRole) { + return List.of(); + } @Override public void close() {} |