Class AthenzAccessControlService
java.lang.Object
com.yahoo.vespa.hosted.controller.api.integration.athenz.AthenzAccessControlService
- All Implemented Interfaces:
AccessControlService
-
Constructor Summary
ConstructorsConstructorDescriptionAthenzAccessControlService(com.yahoo.vespa.athenz.client.zms.ZmsClient zmsClient, com.yahoo.vespa.athenz.api.AthenzDomain domain, Optional<com.yahoo.vespa.athenz.client.zms.ZmsClient> vespaZmsClient, AthenzInstanceSynchronizer athenzInstanceSynchronizer) -
Method Summary
Modifier and TypeMethodDescriptionbooleanapproveDataPlaneAccess(com.yahoo.vespa.athenz.api.AthenzUser user, Instant expiry) booleandecideSshAccess(com.yahoo.config.provision.TenantName tenantName, Instant expiry, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials, boolean approve) com.yahoo.vespa.athenz.api.AthenzRoleInformationgetAccessRoleInformation(com.yahoo.config.provision.TenantName tenantName) booleangetManagedAccess(com.yahoo.config.provision.TenantName tenantName) booleanisVespaTeamMember(com.yahoo.vespa.athenz.api.AthenzUser user) Collection<com.yahoo.vespa.athenz.api.AthenzUser>booleanrequestSshAccess(com.yahoo.config.provision.TenantName tenantName) voidsetManagedAccess(com.yahoo.config.provision.TenantName tenantName, boolean managedAccess)
-
Constructor Details
-
AthenzAccessControlService
public AthenzAccessControlService(com.yahoo.vespa.athenz.client.zms.ZmsClient zmsClient, com.yahoo.vespa.athenz.api.AthenzDomain domain, Optional<com.yahoo.vespa.athenz.client.zms.ZmsClient> vespaZmsClient, AthenzInstanceSynchronizer athenzInstanceSynchronizer)
-
-
Method Details
-
approveDataPlaneAccess
- Specified by:
approveDataPlaneAccessin interfaceAccessControlService
-
listMembers
- Specified by:
listMembersin interfaceAccessControlService
-
getAccessRoleInformation
public com.yahoo.vespa.athenz.api.AthenzRoleInformation getAccessRoleInformation(com.yahoo.config.provision.TenantName tenantName) - Specified by:
getAccessRoleInformationin interfaceAccessControlService- Returns:
- Whether the ssh access role has any pending role membership requests
-
decideSshAccess
public boolean decideSshAccess(com.yahoo.config.provision.TenantName tenantName, Instant expiry, com.yahoo.vespa.athenz.api.OAuthCredentials oAuthCredentials, boolean approve) - Specified by:
decideSshAccessin interfaceAccessControlService- Returns:
- true if access has been granted - false if already member
-
requestSshAccess
public boolean requestSshAccess(com.yahoo.config.provision.TenantName tenantName) - Specified by:
requestSshAccessin interfaceAccessControlService- Returns:
- true if access has been requested - false if already member
-
setManagedAccess
public void setManagedAccess(com.yahoo.config.provision.TenantName tenantName, boolean managedAccess) - Specified by:
setManagedAccessin interfaceAccessControlService
-
getManagedAccess
public boolean getManagedAccess(com.yahoo.config.provision.TenantName tenantName) - Specified by:
getManagedAccessin interfaceAccessControlService
-
isVespaTeamMember
public boolean isVespaTeamMember(com.yahoo.vespa.athenz.api.AthenzUser user)
-