Subject 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
Subject
代表單一實體的相關資訊群組,例如人員。
[Android.Runtime.Register("javax/security/auth/Subject", DoNotGenerateAcw=true)]
public sealed class Subject : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("javax/security/auth/Subject", DoNotGenerateAcw=true)>]
type Subject = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 繼承
- 屬性
- 實作
備註
Subject
代表單一實體的相關資訊群組,例如人員。 這類資訊包括主體的身分識別,以及其安全性相關屬性 (密碼和密碼編譯金鑰,例如) 。
主體可能有多個身分識別。 每個身分識別都會在 內 Subject
表示為 Principal
。 主體只會將名稱系結至 Subject
。 例如, Subject
當是一個人 Alice 時,可能會有兩個主體:一個將 「Alice Bar」、其驅動程式授權上的名稱系結至 Subject
,另一個系結為 「999-99-9999」,其學生識別卡上的數位則系結至 Subject
。 兩個主體都會參考相同的 Subject
名稱,即使每個主體都有不同的名稱也一樣。
Subject
也可能擁有安全性相關屬性,這稱為認證。 需要特殊保護的敏感性認證,例如私人密碼編譯金鑰,會儲存在私人認證 Set
內。 要共用的認證,例如公開金鑰憑證或 Kerberos 伺服器票證會儲存在公用認證 Set
內。 存取和修改不同認證集需要不同的許可權。
若要擷取與 Subject
相關聯的所有主體,請叫用 getPrincipals
方法。 若要擷取屬於 Subject
的所有公用或私人認證,請分別叫用 getPublicCredentials
方法或 getPrivateCredentials
方法。 若要修改主體和認證的傳 Set
回,請使用 類別中 Set
定義的方法。 例如:
Subject subject;
Principal principal;
Object credential;
// add a Principal and credential to the Subject
subject.getPrincipals().add(principal);
subject.getPublicCredentials().add(credential);
這個 Subject
類別會實作 Serializable
。 雖然與 Subject
相關聯的主體會序列化,但與 相關聯的 Subject
認證則不是。 請注意,類別 java.security.Principal
不會實作 Serializable
。 因此,所有與 Subjects 相關聯的具體 Principal
實作都必須實 Serializable
作 。
的 javax.security.auth.Subject
JAVA 檔。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。
建構函式
Subject() |
建立 的實例 |
Subject(Boolean, ICollection<IPrincipal>, ICollection<Object>, ICollection<Object>) |
使用主體和認證建立 的 |
屬性
Class |
傳回這個 |
Handle |
基礎 Android 實例的控制碼。 (繼承來源 Object) |
IsReadOnly |
查詢這 |
JniIdentityHashCode |
|
JniPeerMembers |
|
PeerReference |
|
Principals |
|
PrivateCredentials |
|
PublicCredentials |
|
ThresholdClass |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 (繼承來源 Object) |
ThresholdType |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 (繼承來源 Object) |
方法
Clone() |
建立並傳回這個 物件的複本。 (繼承來源 Object) |
Dispose() |
|
Dispose(Boolean) |
|
DoAs(Subject, IPrivilegedAction) |
以特定 |
DoAs(Subject, IPrivilegedExceptionAction) |
以特定 |
DoAsPrivileged(Subject, IPrivilegedAction, AccessControlContext) |
以特定 |
DoAsPrivileged(Subject, IPrivilegedExceptionAction, AccessControlContext) |
以特定 |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
GetPrincipals(Class) |
傳回與這個 |
GetPrivateCredentials(Class) |
|
GetPublicCredentials(Class) |
|
GetSubject(AccessControlContext) |
|
JavaFinalize() |
當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。 (繼承來源 Object) |
Notify() |
喚醒正在等候此物件的監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
SetReadOnly() |
|
ToArray<T>() |
|
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterFromRuntime() |
|
Wait() |
讓目前的執行緒等到喚醒為止,通常是藉由 < em > notified < /em > 或 < em > interrupted < /em > 來喚醒。 (繼承來源 Object) |
Wait(Int64) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
明確介面實作
IJavaPeerable.Disposed() |
|
IJavaPeerable.DisposeUnlessReferenced() |
|
IJavaPeerable.Finalized() |
|
IJavaPeerable.JniManagedPeerState |
|
IJavaPeerable.SetJniIdentityHashCode(Int32) |
|
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
|
IJavaPeerable.SetPeerReference(JniObjectReference) |
|
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
|
GetJniTypeName(IJavaPeerable) |
|