Interface TenantOp

All Known Implementing Classes:
OMMultiTenantManagerImpl.AuthorizerOp, OMMultiTenantManagerImpl.CacheOp

@Private @Unstable public interface TenantOp
Interface for tenant operations.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    assignTenantAdmin(String accessId, boolean delegated)
    Given an accessId, grant that user admin privilege in the tenant.
    void
    assignUserToTenant(String userPrincipal, String tenantId, String accessId)
    Creates a new user that exists for S3 API access to Ozone.
    void
    createTenant(String tenantId, String userRoleName, String adminRoleName)
    Given a tenant name, create tenant roles and policies in the authorizer (Ranger).
    void
    deleteTenant(org.apache.hadoop.ozone.om.multitenant.Tenant tenant)
    Given a Tenant object, remove all policies and roles from Ranger that are added during tenant creation.
    void
    Given an accessId, revoke that user's admin privilege in that tenant.
    void
    revokeUserAccessId(String accessId, String tenantId)
    Revoke user accessId in a tenant.
  • Method Details

    • createTenant

      void createTenant(String tenantId, String userRoleName, String adminRoleName) throws IOException
      Given a tenant name, create tenant roles and policies in the authorizer (Ranger). Then return a Tenant object.
      Parameters:
      tenantId - tenant name
      userRoleName - user role name
      adminRoleName - admin role name
      Throws:
      IOException
    • deleteTenant

      void deleteTenant(org.apache.hadoop.ozone.om.multitenant.Tenant tenant) throws IOException
      Given a Tenant object, remove all policies and roles from Ranger that are added during tenant creation. Note this differs from deactivateTenant() above.
      Parameters:
      tenant - tenant object
      Throws:
      IOException
    • assignUserToTenant

      void assignUserToTenant(String userPrincipal, String tenantId, String accessId) throws IOException
      Creates a new user that exists for S3 API access to Ozone.
      Parameters:
      userPrincipal - user principal
      tenantId - tenant name
      accessId - access ID
      Throws:
      IOException
    • revokeUserAccessId

      void revokeUserAccessId(String accessId, String tenantId) throws IOException
      Revoke user accessId in a tenant.
      Parameters:
      accessId - access ID
      tenantId - tenant name
      Throws:
      IOException
    • assignTenantAdmin

      void assignTenantAdmin(String accessId, boolean delegated) throws IOException
      Given an accessId, grant that user admin privilege in the tenant.
      Parameters:
      accessId - access ID
      delegated - true if intending to assign as the user as the tenant's delegated admin (who can assign and revoke other tenant admins in this tenant)
      Throws:
      IOException
    • revokeTenantAdmin

      void revokeTenantAdmin(String accessId) throws IOException
      Given an accessId, revoke that user's admin privilege in that tenant.
      Parameters:
      accessId - access ID
      Throws:
      IOException