Class AthenzAccessControlService

    • Constructor Detail

      • 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 Detail

      • getAccessRoleInformation

        public com.yahoo.vespa.athenz.api.AthenzRoleInformation getAccessRoleInformation​(com.yahoo.config.provision.TenantName tenantName)
        Specified by:
        getAccessRoleInformation in interface AccessControlService
        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:
        decideSshAccess in interface AccessControlService
        Returns:
        true if access has been granted - false if already member
      • requestSshAccess

        public boolean requestSshAccess​(com.yahoo.config.provision.TenantName tenantName)
        Specified by:
        requestSshAccess in interface AccessControlService
        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:
        setManagedAccess in interface AccessControlService
      • isVespaTeamMember

        public boolean isVespaTeamMember​(com.yahoo.vespa.athenz.api.AthenzUser user)