Package jcifs

Interface SID

  • All Known Implementing Classes:
    SID

    public interface SID
    A Windows SID is a numeric identifier used to represent Windows accounts. SIDs are commonly represented using a textual format such as S-1-5-21-1496946806-2192648263-3843101252-1029 but they may also be resolved to yield the name of the associated Windows account such as Administrators or MYDOM\alice.

    Consider the following output of examples/SidLookup.java:

            toString: S-1-5-21-4133388617-793952518-2001621813-512
     toDisplayString: WNET\Domain Admins
             getType: 2
         getTypeText: Domain group
       getDomainName: WNET
      getAccountName: Domain Admins
     
    • Method Detail

      • getDomainSid

        SID getDomainSid()
        Returns:
        domain SID
      • getRid

        int getRid()
        Get the RID This is the last subauthority identifier
        Returns:
        the RID
      • toDisplayString

        String toDisplayString()
        Return a String representing this SID ideal for display to users. This method should return the same text that the ACL editor in Windows would display.

        Specifically, if the SID has been resolved and it is not a domain SID or builtin account, the full DOMAIN\name form of the account will be returned (e.g. MYDOM\alice or MYDOM\Domain Users). If the SID has been resolved but it is is a domain SID, only the domain name will be returned (e.g. MYDOM). If the SID has been resolved but it is a builtin account, only the name component will be returned (e.g. SYSTEM). If the sid cannot be resolved the numeric representation from toString() is returned.

        Returns:
        display format, potentially with resolved names
      • getAccountName

        String getAccountName()
        Return the sAMAccountName of this SID unless it could not be resolved in which case the numeric RID is returned. If this SID is a domain SID, this method will return an empty String.
        Returns:
        the account name
      • getDomainName

        String getDomainName()
        Return the domain name of this SID unless it could not be resolved in which case the numeric representation is returned.
        Returns:
        the domain name
      • getTypeText

        String getTypeText()
        Return text representing the SID type suitable for display to users. Text includes 'User', 'Domain group', 'Local group', etc.
        Returns:
        textual representation of type
      • getType

        int getType()
        Returns the type of this SID indicating the state or type of account.

        SID types are described in the following table.

        Type Name
        SID_TYPE_USE_NONE 0
        SID_TYPE_USER User
        SID_TYPE_DOM_GRP Domain group
        SID_TYPE_DOMAIN Domain
        SID_TYPE_ALIAS Local group
        SID_TYPE_WKN_GRP Builtin group
        SID_TYPE_DELETED Deleted
        SID_TYPE_INVALID Invalid
        SID_TYPE_UNKNOWN Unknown
        Returns:
        type code
      • unwrap

        <T> T unwrap​(Class<T> type)
        Parameters:
        type -
        Returns:
        unwrapped instance