Class User

java.lang.Object
dev.frostlake.metastore.model.User

public class User extends Object
Represents a Snowflake-compatible user
  • Constructor Details

  • Method Details

    • getName

      public String getName()
    • getOwner

      public String getOwner()
    • setOwner

      public void setOwner(String owner)
    • getPassword

      public String getPassword()
    • setPassword

      public void setPassword(String password)
    • getDefaultRole

      public String getDefaultRole()
    • setDefaultRole

      public void setDefaultRole(String defaultRole)
    • getGrantedRoles

      public Set<String> getGrantedRoles()
    • grantRole

      public void grantRole(String roleName)
    • revokeRole

      public void revokeRole(String roleName)
    • hasRole

      public boolean hasRole(String roleName)
    • grantPrivilege

      public void grantPrivilege(String objectType, String objectName, Privilege privilege)
    • grantPrivilege

      public void grantPrivilege(String objectType, String objectName, Privilege privilege, String grantor)
    • getPrivilegeGrantor

      public String getPrivilegeGrantor(String objectType, String objectName, Privilege privilege)
    • grantRole

      public void grantRole(String roleName, String grantor)
    • getRoleGrantor

      public String getRoleGrantor(String roleName)
    • hasExplicitRoleGrant

      public boolean hasExplicitRoleGrant(String roleName)
      True when the role reached this user through an explicit GRANT ROLE (which records its grantor) rather than implicitly at user creation (PUBLIC, granted without a grantor entry). SHOW GRANTS TO USER lists only explicit grants — live Snowflake shows zero rows for a fresh user.
    • revokePrivilege

      public void revokePrivilege(String objectType, String objectName, Privilege privilege)
    • hasPrivilege

      public boolean hasPrivilege(String objectType, String objectName, Privilege privilege)
    • getPrivileges

      public Set<Privilege> getPrivileges(String objectType, String objectName)
    • getAllPrivileges

      public Map<String,Set<Privilege>> getAllPrivileges()
    • grantColumnPrivilege

      public void grantColumnPrivilege(String objectType, String objectName, String columnName, Privilege privilege)
    • revokeColumnPrivilege

      public void revokeColumnPrivilege(String objectType, String objectName, String columnName, Privilege privilege)
    • hasColumnPrivilege

      public boolean hasColumnPrivilege(String objectType, String objectName, String columnName, Privilege privilege)
    • getColumnsWithPrivilege

      public Set<String> getColumnsWithPrivilege(String objectType, String objectName, Privilege privilege)
    • getAllColumnPrivileges

      public Map<String,Map<String,Set<Privilege>>> getAllColumnPrivileges()
    • getLoginName

      public String getLoginName()
      The user's login name: their own name unless one was given, and unchanged by a rename.
    • setLoginName

      public void setLoginName(String loginName)
    • getDisplayName

      public String getDisplayName()
      The user's display name: their own name unless one was given, and null once unset.
    • setDisplayName

      public void setDisplayName(String displayName)
    • getFirstName

      public String getFirstName()
    • setFirstName

      public void setFirstName(String firstName)
    • getMiddleName

      public String getMiddleName()
    • setMiddleName

      public void setMiddleName(String middleName)
    • getLastName

      public String getLastName()
    • setLastName

      public void setLastName(String lastName)
    • getEmail

      public String getEmail()
    • setEmail

      public void setEmail(String email)
    • getDefaultWarehouse

      public String getDefaultWarehouse()
    • setDefaultWarehouse

      public void setDefaultWarehouse(String defaultWarehouse)
    • getDefaultNamespace

      public String getDefaultNamespace()
      The database.schema a new session starts in, as SHOW USERS' default_namespace.
    • setDefaultNamespace

      public void setDefaultNamespace(String defaultNamespace)
    • getDefaultSecondaryRoles

      public String getDefaultSecondaryRoles()
      The secondary roles a session activates, which live reports as a JSON array.
    • setDefaultSecondaryRoles

      public void setDefaultSecondaryRoles(String defaultSecondaryRoles)
    • isMustChangePassword

      public boolean isMustChangePassword()
    • setMustChangePassword

      public void setMustChangePassword(boolean mustChangePassword)
    • getUserType

      public String getUserType()
      PERSON, SERVICE or LEGACY_SERVICE — live defaults a new user to PERSON.
    • setUserType

      public void setUserType(String userType)
    • getCreatedTime

      public LocalDateTime getCreatedTime()
    • isEnabled

      public boolean isEnabled()
    • setEnabled

      public void setEnabled(boolean enabled)
    • getComment

      public String getComment()
    • setComment

      public void setComment(String comment)
    • rename

      public void rename(String newName)