Class OMMultiTenantManagerImpl.CacheOp

java.lang.Object
org.apache.hadoop.ozone.om.OMMultiTenantManagerImpl.CacheOp
All Implemented Interfaces:
TenantOp
Enclosing class:
OMMultiTenantManagerImpl

public class OMMultiTenantManagerImpl.CacheOp extends Object implements TenantOp
Implements tenant cache operations.
  • Method Details

    • createTenant

      public void createTenant(String tenantId, String userRoleName, String adminRoleName)
      Description copied from interface: TenantOp
      Given a tenant name, create tenant roles and policies in the authorizer (Ranger). Then return a Tenant object.
      Specified by:
      createTenant in interface TenantOp
      Parameters:
      tenantId - tenant name
      userRoleName - user role name
      adminRoleName - admin role name
    • deleteTenant

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

      public void assignUserToTenant(String userPrincipal, String tenantId, String accessId)
      Description copied from interface: TenantOp
      Creates a new user that exists for S3 API access to Ozone.
      Specified by:
      assignUserToTenant in interface TenantOp
      Parameters:
      userPrincipal - user principal
      tenantId - tenant name
      accessId - access ID
    • revokeUserAccessId

      public void revokeUserAccessId(String accessId, String tenantId) throws IOException
      Description copied from interface: TenantOp
      Revoke user accessId in a tenant.
      Specified by:
      revokeUserAccessId in interface TenantOp
      Parameters:
      accessId - access ID
      tenantId - tenant name
      Throws:
      IOException
    • assignTenantAdmin

      public void assignTenantAdmin(String accessId, boolean delegated) throws IOException
      This should be called in validateAndUpdateCache after the InAuthorizer variant (called in preExecute).
      Specified by:
      assignTenantAdmin in interface TenantOp
      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

      public void revokeTenantAdmin(String accessId) throws IOException
      Description copied from interface: TenantOp
      Given an accessId, revoke that user's admin privilege in that tenant.
      Specified by:
      revokeTenantAdmin in interface TenantOp
      Parameters:
      accessId - access ID
      Throws:
      IOException