Class Identity

  • All Implemented Interfaces:
    Serializable

    public final class Identity
    extends Object
    implements Serializable
    An identity in a Policy. The following types of identities are permitted in IAM policies:
    • Google account
    • Service account
    • Google group
    • Google Apps domain

    There are also two special identities that represent all users and all Google-authenticated accounts.

    See Also:
    Concepts related to identity, Serialized Form
    • Method Detail

      • getValue

        public String getValue()
        Returns the string identifier for this identity. The value corresponds to:
        • email address (for identities of type USER, SERVICE_ACCOUNT, and GROUP)
        • domain (for identities of type DOMAIN)
        • null (for identities of type ALL_USERS and ALL_AUTHENTICATED_USERS)
      • allUsers

        public static Identity allUsers()
        Returns a new identity representing anyone who is on the internet; with or without a Google account.
      • allAuthenticatedUsers

        public static Identity allAuthenticatedUsers()
        Returns a new identity representing anyone who is authenticated with a Google account or a service account.
      • user

        public static Identity user​(String email)
        Returns a new user identity.
        Parameters:
        email - An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
      • serviceAccount

        public static Identity serviceAccount​(String email)
        Returns a new service account identity.
        Parameters:
        email - An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
      • group

        public static Identity group​(String email)
        Returns a new group identity.
        Parameters:
        email - An email address that represents a Google group. For example, admins@example.com.
      • domain

        public static Identity domain​(String domain)
        Returns a new domain identity.
        Parameters:
        domain - A Google Apps domain name that represents all the users of that domain. For example, google.com or example.com.
      • projectOwner

        public static Identity projectOwner​(String projectId)
        Returns a new project owner identity.
        Parameters:
        projectId - A Google Cloud Platform project ID. For example, my-sample-project.
      • projectEditor

        public static Identity projectEditor​(String projectId)
        Returns a new project editor identity.
        Parameters:
        projectId - A Google Cloud Platform project ID. For example, my-sample-project.
      • projectViewer

        public static Identity projectViewer​(String projectId)
        Returns a new project viewer identity.
        Parameters:
        projectId - A Google Cloud Platform project ID. For example, my-sample-project.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • strValue

        public String strValue()
        Returns the string value associated with the identity. Used primarily for converting from Identity objects to strings for protobuf-generated policies.
      • valueOf

        public static Identity valueOf​(String identityStr)
        Converts a string to an Identity. Used primarily for converting protobuf-generated policy identities to Identity objects.