UserPrincipal
Stay organized with collections
Save and categorize content based on your preferences.
Known Indirect Subclasses
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 name
that is typically the username or
account name that it represents. User principal objects may be obtained using
a UserPrincipalLookupService
, or returned by FileAttributeView
implementations that provide access to identity related
attributes. For example, the AclFileAttributeView
and PosixFileAttributeView
provide access to a file's owner
.
Inherited Method Summary
From interface
java.security.Principal
abstract
boolean
|
equals( Object another)
Compares this principal to the specified object.
|
abstract
String
|
getName()
Returns the name of this principal.
|
abstract
int
|
hashCode()
Returns a hashcode for this principal.
|
boolean
|
implies( Subject subject)
Returns true if the specified subject is implied by this principal.
|
abstract
String
|
toString()
Returns a string representation of this principal.
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-07-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-07-10 UTC."],[[["\u003cp\u003e\u003ccode\u003eUserPrincipal\u003c/code\u003e represents an identity, typically a username or account name, used for determining access rights to file system objects.\u003c/p\u003e\n"],["\u003cp\u003eAccess rights are often managed using mechanisms like Access Control Lists (ACLs) that verify the identity of the requesting entity.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eUserPrincipal\u003c/code\u003e objects can be retrieved via a \u003ccode\u003eUserPrincipalLookupService\u003c/code\u003e or from \u003ccode\u003eFileAttributeView\u003c/code\u003e implementations, such as \u003ccode\u003eAclFileAttributeView\u003c/code\u003e and \u003ccode\u003ePosixFileAttributeView\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eUserPrincipal\u003c/code\u003e inherits methods from \u003ccode\u003ejava.security.Principal\u003c/code\u003e like \u003ccode\u003egetName()\u003c/code\u003e, \u003ccode\u003eequals()\u003c/code\u003e, \u003ccode\u003ehashCode()\u003c/code\u003e, \u003ccode\u003eimplies()\u003c/code\u003e, and \u003ccode\u003etoString()\u003c/code\u003e for managing and comparing principal objects.\u003c/p\u003e\n"]]],["`UserPrincipal` represents an identity for determining file system access rights. It features a `name` (username/account name) and can be retrieved via `UserPrincipalLookupService` or `FileAttributeView`. It extends `Principal`, inheriting methods like `equals`, `getName`, `hashCode`, `implies`, and `toString`. Access to objects is granted based on the entity's identity, which may be checked against Access Control Lists (ACLs). `GroupPrincipal` is an indirect subclass, representing a group identity.\n"],null,["# UserPrincipal\n\npublic interface **UserPrincipal** implements [Principal](../../../../../reference/java/security/Principal.html) \n\n|---|---|---|\n| Known Indirect Subclasses [GroupPrincipal](../../../../../reference/java/nio/file/attribute/GroupPrincipal.html) |----------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------| | [GroupPrincipal](../../../../../reference/java/nio/file/attribute/GroupPrincipal.html) | A `UserPrincipal` representing a *group identity*, used to determine access rights to objects in a file system. | |||\n\nA `Principal` representing an identity used to determine access rights\nto objects in a file system.\n\nOn many platforms and file systems an entity requires appropriate access\nrights or permissions in order to access objects in a file system. The\naccess rights are generally performed by checking the identity of the entity.\nFor example, on implementations that use Access Control Lists (ACLs) to\nenforce privilege separation then a file in the file system may have an\nassociated ACL that determines the access rights of identities specified in\nthe ACL.\n\nA `UserPrincipal` object is an abstract representation of an\nidentity. It has a [name](../../../../../reference/java/security/Principal.html#getName()) that is typically the username or\naccount name that it represents. User principal objects may be obtained using\na [UserPrincipalLookupService](../../../../../reference/java/nio/file/attribute/UserPrincipalLookupService.html), or returned by [FileAttributeView](../../../../../reference/java/nio/file/attribute/FileAttributeView.html) implementations that provide access to identity related\nattributes. For example, the [AclFileAttributeView](../../../../../reference/java/nio/file/attribute/AclFileAttributeView.html) and [PosixFileAttributeView](../../../../../reference/java/nio/file/attribute/PosixFileAttributeView.html) provide access to a file's [owner](../../../../../reference/java/nio/file/attribute/PosixFileAttributes.html#owner()). \n\n### Inherited Method Summary\n\nFrom interface [java.security.Principal](../../../../../reference/java/security/Principal.html) \n\n|-------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| abstract boolean | [equals](../../../../../reference/java/security/Principal.html#equals(java.lang.Object))([Object](../../../../../reference/java/lang/Object.html) another) Compares this principal to the specified object. |\n| abstract [String](../../../../../reference/java/lang/String.html) | [getName](../../../../../reference/java/security/Principal.html#getName())() Returns the name of this principal. |\n| abstract int | [hashCode](../../../../../reference/java/security/Principal.html#hashCode())() Returns a hashcode for this principal. |\n| boolean | [implies](../../../../../reference/java/security/Principal.html#implies(javax.security.auth.Subject))([Subject](../../../../../reference/javax/security/auth/Subject.html) subject) Returns true if the specified subject is implied by this principal. |\n| abstract [String](../../../../../reference/java/lang/String.html) | [toString](../../../../../reference/java/security/Principal.html#toString())() Returns a string representation of this principal. |"]]