Subject クラス

定義

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

[Android.Runtime.Register("javax/security/auth/Subject", DoNotGenerateAcw=true)]
public sealed class Subject : Java.Lang.Object, IDisposable, 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は、個人などの 1 つのエンティティの関連情報のグループを表します。 このような情報には、サブジェクトの ID と、そのセキュリティ関連の属性 (パスワードや暗号化キーなど) が含まれます。

サブジェクトは複数の ID を持つ可能性があります。 各 ID は、Principal内のSubjectとして表されます。 プリンシパルは単に名前を Subjectにバインドします。 たとえば、1 人のユーザーである Alice という Subject 2 つのプリンシパルがある場合、1 つは "Alice Bar" (運転免許証の名前) を Subjectにバインドし、もう 1 つは学生 ID カードの番号である "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を実装しないことに注意してください。 したがって、サブジェクトに関連付けられているすべての具象 Principal 実装では、 Serializableを実装する必要があります。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
Subject()

プリンシパルの空のSubjectとパブリック資格情報とプライベート資格情報の空のセットを使用して、Setのインスタンスを作成します。

Subject(Boolean, ICollection<IPrincipal>, ICollection<Object>, ICollection<Object>)

プリンシパルと資格情報を使用して Subject のインスタンスを作成します。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
IsReadOnly

この Subject が読み取り専用かどうかをクエリします。

JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
JniPeerMembers

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
Principals

このSetに関連付けられているプリンシパルのSubjectを返します。

PrivateCredentials

このSetによって保持されているプライベート資格情報のSubjectを返します。

PublicCredentials

このSetによって保持されているパブリック資格情報のSubjectを返します。

ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)
ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)

メソッド

名前 説明
Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
DoAs(Subject, IPrivilegedAction)

特定の Subjectとして作業を実行します。

DoAs(Subject, IPrivilegedExceptionAction)

特定の Subjectとして作業を実行します。

DoAsPrivileged(Subject, IPrivilegedAction, AccessControlContext)

特定の Subjectとして特権作業を実行します。

DoAsPrivileged(Subject, IPrivilegedExceptionAction, AccessControlContext)

特定の Subjectとして特権作業を実行します。

Equals(Object)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
GetPrincipals(Class)

指定したSetのインスタンスまたはサブクラスである、このSubjectに関連付けられているプリンシパルのClassを返します。

GetPrivateCredentials(Class)

指定したSetのインスタンスまたはサブクラスである、このSubjectに関連付けられているプライベート資格情報のClassを返します。

GetPublicCredentials(Class)

指定したSetのインスタンスまたはサブクラスである、このSubjectに関連付けられているパブリック資格情報のClassを返します。

GetSubject(AccessControlContext)

指定されたSubjectに関連付けられているAccessControlContextを取得します。

JavaFinalize()

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
SetReadOnly()

この Subject を読み取り専用に設定します。

ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
IJavaPeerable.Finalized()

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

(継承元 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

Subjectは、個人などの 1 つのエンティティの関連情報のグループを表します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象