Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Inherited Methods](https://developer.android.com/reference/java/nio/file/attribute/UserPrincipal#inhmethods)

# UserPrincipal

` public interface UserPrincipal `   
` implements https://developer.android.com/reference/java/security/Principal `

|---|
| java.nio.file.attribute.UserPrincipal |

Known indirect subclasses [GroupPrincipal](https://developer.android.com/reference/java/nio/file/attribute/GroupPrincipal) [GroupPrincipal](https://developer.android.com/reference/java/nio/file/attribute/GroupPrincipal) A `UserPrincipal` representing a *group identity*, used to determine access rights to objects in a file system.   

*** ** * ** ***

A `Principal` representing an identity used to determine access rights to objects in a file system.

On many platforms and file systems an entity requires appropriate access rights or permissions in order to access objects in a file system. The access rights are generally performed by checking the identity of the entity. For example, on implementations that use Access Control Lists (ACLs) to enforce privilege separation then a file in the file system may have an associated ACL that determines the access rights of identities specified in the ACL.

A `UserPrincipal` object is an abstract representation of an identity. It has a `https://developer.android.com/reference/java/security/Principal#getName()` that is typically the username or account name that it represents. User principal objects may be obtained using a `https://developer.android.com/reference/java/nio/file/attribute/UserPrincipalLookupService`, or returned by `https://developer.android.com/reference/java/nio/file/attribute/FileAttributeView` implementations that provide access to identity related attributes. For example, the `https://developer.android.com/reference/java/nio/file/attribute/AclFileAttributeView` and `https://developer.android.com/reference/java/nio/file/attribute/PosixFileAttributeView` provide access to a file's `https://developer.android.com/reference/java/nio/file/attribute/PosixFileAttributes#owner()`.

## Summary

### Inherited methods

From interface ` https://developer.android.com/reference/java/security/Principal ` ` abstract boolean` ` https://developer.android.com/reference/java/security/Principal#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object another) `

Compares this principal to the specified object.
` abstract https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/security/Principal#getName()() `

Returns the name of this principal.
` abstract int` ` https://developer.android.com/reference/java/security/Principal#hashCode()() `

Returns a hashcode for this principal.
` default boolean` ` https://developer.android.com/reference/java/security/Principal#implies(javax.security.auth.Subject)(https://developer.android.com/reference/javax/security/auth/Subject subject) `

Returns true if the specified subject is implied by this principal.
` abstract https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/security/Principal#toString()() `

Returns a string representation of this principal.