diff options
author | Eirik Nygaard <eirik.nygaard@yahooinc.com> | 2022-10-13 14:53:14 +0200 |
---|---|---|
committer | Eirik Nygaard <eirik.nygaard@yahooinc.com> | 2022-10-13 14:53:14 +0200 |
commit | b3111729d06f7e204f0ce76f6ae51bf5e7814759 (patch) | |
tree | fb8a6fb2aedc24d36d51dd6f1454f09ee386c02b /vespa-athenz/src/main | |
parent | 0a0a41976464257594627231f038563b78f87224 (diff) |
Add method for fetching domains based on aws account id
Diffstat (limited to 'vespa-athenz/src/main')
-rw-r--r-- | vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java | 12 | ||||
-rw-r--r-- | vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/ZmsClient.java | 2 |
2 files changed, 14 insertions, 0 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 d5b772e5bab..aaf9038208f 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 @@ -205,6 +205,18 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { } @Override + public List<AthenzDomain> getDomainListByAccount(String account) { + HttpUriRequest request = RequestBuilder.get() + .setUri(zmsUrl.resolve("domain")) + .addParameter("account", account) + .build(); + return execute(request, response -> { + DomainListResponseEntity result = readEntity(response, DomainListResponseEntity.class); + return result.domains.stream().map(AthenzDomain::new).collect(toList()); + }); + } + + @Override public boolean hasAccess(AthenzResourceName resource, String action, AthenzIdentity identity) { URI uri = zmsUrl.resolve(String.format("access/%s/%s?principal=%s", action, resource.toResourceNameString(), identity.getFullName())); diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/ZmsClient.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/ZmsClient.java index 0dd0d30200c..be4c6c7ba3b 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/ZmsClient.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/ZmsClient.java @@ -50,6 +50,8 @@ public interface ZmsClient extends Closeable { List<AthenzDomain> getDomainList(String prefix); + List<AthenzDomain> getDomainListByAccount(String id); + boolean hasAccess(AthenzResourceName resource, String action, AthenzIdentity identity); void createPolicy(AthenzDomain athenzDomain, String athenzPolicy); |