Bagikan melalui


SecurityTokenHandler Kelas

Definisi

Kelas dasar abstrak untuk penangan token keamanan.

public ref class SecurityTokenHandler abstract : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public abstract class SecurityTokenHandler : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type SecurityTokenHandler = class
    interface ICustomIdentityConfiguration
Public MustInherit Class SecurityTokenHandler
Implements ICustomIdentityConfiguration
Warisan
SecurityTokenHandler
Turunan
Penerapan

Contoh

Contoh kode di semua SecurityTokenHandler topik diambil dari Custom Token sampel. Sampel ini menyediakan kelas kustom yang memungkinkan pemrosesan Simple Web Tokens (SWT). Untuk informasi tentang sampel ini dan sampel lain yang tersedia untuk WIF dan tempat mengunduhnya, lihat Indeks Sampel Kode WIF. XML berikut menunjukkan cara menambahkan handler token SWT ke koleksi handler token.

<system.identityModel>
  <identityConfiguration saveBootstrapContext="true">
    <issuerTokenResolver type="SimpleWebToken.CustomIssuerTokenResolver, SimpleWebToken">
      <AddAudienceKeyPair  symmetricKey="wAVkldQiFypTQ+kdNdGWCYCHRcee8XmXxOvgmak8vSY=" audience="http://localhost:19851/" />
    </issuerTokenResolver>
    <issuerNameRegistry type="RelyingParty.TrustedIssuerNameRegistry, RelyingParty"/>
    <audienceUris>
      <add value="http://localhost:19851/"/>
    </audienceUris>
    <securityTokenHandlers>
      <add type="SimpleWebToken.SimpleWebTokenHandler, SimpleWebToken" />
    </securityTokenHandlers>
  </identityConfiguration>
</system.identityModel>

Keterangan

Kelas SecurityTokenHandler adalah kelas dasar dari mana semua penangan token keamanan berasal. Handler token keamanan bertanggung jawab untuk:

  • Memvalidasi token keamanan (SecurityToken) dari jenis yang dirancang untuk memproses dan mengemas klaim yang terkandung dalam token ke dalam ClaimsIdentity objek.

  • Menserialisasikan dan mendeserialisasi token keamanan jenis yang dirancang untuk diproses.

  • Menserialisasikan dan mendeserialisasi klausa pengidentifikasi kunci (SecurityKeyIdentifierClause) yang mengacu pada token jenis yang dirancang untuk memproses ke dan dari <wsse:SecurityTokenReference> elemen.

  • Membuat token keamanan dari objek yang SecurityTokenDescriptor diteruskan oleh implementasi SecurityTokenService kelas.

  • Membuat klausa pengidentifikasi utama dari token keamanan untuk implementasi SecurityTokenService kelas.

Windows Identity Foundation (WIF) mengirimkan handler token keamanan berikut ke luar kotak:

Sebagian besar kelas ini mengekspos anggota tambahan yang menerapkan fungsionalitas yang khusus untuk pemrosesan token yang kelasnya dirancang. Dalam banyak kasus, mungkin lebih baik berasal dari salah satu kelas ini daripada langsung dari SecurityTokenHandler kelas .

Handler token keamanan dapat ditambahkan atau dihapus dari koleksi handler token dengan menentukan <elemen tambahkan>, <hapus>, atau <hapus> di bawah <elemen securityTokenHandlers> dalam file konfigurasi. Objek SecurityTokenHandlerConfiguration yang berisi pengaturan konfigurasi untuk pengumpulan handler dapat diakses melalui Configuration properti dan koleksi handler yang menjadi anggota handler token dapat diakses dari ContainingCollection properti . Anda dapat mengambil LoadCustomConfiguration alih metode untuk memproses elemen konfigurasi kustom apa pun yang dilakukan handler Anda.

Kelas ini SecurityTokenHandler mengekspos beberapa properti dan metode lainnya. Bergantung pada fungsionalitas yang Anda pilih untuk diterapkan, Anda dapat mengambil alih beberapa atau semua anggota ini.

Anda harus mengambil alih TokenType properti dan GetTokenTypeIdentifiers metode untuk menyediakan infrastruktur WIF dengan informasi tentang jenis token keamanan yang dirancang untuk diproses oleh kelas Anda.

Fungsi validasi, serialisasi, dan deserialisasi diekspos melalui properti atau metode yang menunjukkan apakah handler dapat melakukan fungsi tertentu yang dikombinasikan dengan metode atau metode yang mengimplementasikan fungsionalitas. Daftar berikut memasangkan properti atau metode yang menunjukkan fungsionalitas dengan metode yang mengimplementasikan fungsionalitas tersebut:

Metode CreateToken dan dipanggil CreateSecurityTokenReference dari alur dalam implementasi SecurityTokenService kelas.

Metode DetectReplayedToken ini dipanggil oleh infrastruktur WIF untuk menentukan apakah token yang ditentukan telah diterima. Secara default metode ini mengembalikan false, yang menunjukkan bahwa token belum diterima. Anda dapat mengambil alih metode dan memberikan logika untuk mendeteksi token yang diputar ulang.

Konstruktor

SecurityTokenHandler()

Dipanggil dari konstruktor di kelas turunan SecurityTokenHandler untuk menginisialisasi kelas.

Properti

CanValidateToken

Mendapatkan nilai yang menunjukkan apakah handler mendukung validasi token keamanan.

CanWriteToken

Mendapatkan nilai yang menunjukkan apakah handler dapat membuat serial token keamanan.

Configuration

Mendapatkan atau mengatur SecurityTokenHandlerConfiguration objek yang menyediakan konfigurasi untuk instans saat ini.

ContainingCollection

Mendapatkan koleksi handler token yang berisi instans saat ini.

TokenType

Ketika ditimpa di kelas turunan, mendapatkan jenis token keamanan yang diproses oleh instans ini.

Metode

CanReadKeyIdentifierClause(XmlReader)

Mengembalikan nilai yang menunjukkan apakah elemen XML yang dirujuk oleh pembaca XML yang ditentukan adalah klausa pengidentifikasi kunci yang dapat dideserialisasi oleh instans ini.

CanReadToken(String)

Mengembalikan nilai yang menunjukkan apakah string yang ditentukan dapat dideserialisasi sebagai token jenis yang diproses oleh instans ini.

CanReadToken(XmlReader)

Mengembalikan nilai yang menunjukkan apakah elemen XML yang direferensikan oleh pembaca XML yang ditentukan dapat dibaca sebagai token jenis yang diproses oleh instans ini.

CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

Mengembalikan nilai yang menunjukkan apakah klausa pengidentifikasi kunci yang ditentukan dapat diserialisasikan oleh instans ini.

CreateSecurityTokenReference(SecurityToken, Boolean)

Saat ditimpa di kelas turunan, membuat referensi token keamanan untuk token yang diproses oleh kelas tersebut. Metode ini biasanya disebut oleh layanan token keamanan (STS).

CreateToken(SecurityTokenDescriptor)

Saat ditimpa di kelas turunan, membuat token keamanan menggunakan deskriptor token yang ditentukan. Metode ini dipanggil oleh layanan token keamanan (STS).

DetectReplayedToken(SecurityToken)

Saat ditimpa di kelas turunan, melemparkan pengecualian jika token yang ditentukan terdeteksi sedang diputar ulang.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetTokenTypeIdentifiers()

Saat ditimpa di kelas turunan, mengembalikan set URI yang digunakan dalam permintaan untuk mengidentifikasi token jenis yang diproses oleh kelas turunan.

GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
LoadCustomConfiguration(XmlNodeList)

Saat ditimpa di kelas turunan, memuat konfigurasi kustom dari XML.

MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
ReadKeyIdentifierClause(XmlReader)

Saat ditimpa di kelas turunan, deserialisasi XML yang direferensikan oleh pembaca XML yang ditentukan ke klausa pengidentifikasi kunci yang mereferensikan token yang diproses oleh kelas turunan.

ReadToken(String)

Saat ditimpa di kelas turunan, deserialisasi string yang ditentukan ke token jenis yang diproses oleh kelas turunan.

ReadToken(XmlReader)

Saat ditimpa di kelas turunan, deserialisasi XML yang direferensikan oleh pembaca XML yang ditentukan ke token jenis yang diproses oleh kelas turunan.

ReadToken(XmlReader, SecurityTokenResolver)

Saat ditimpa di kelas turunan, deserialisasi XML yang direferensikan oleh pembaca XML yang ditentukan ke token jenis yang diproses oleh kelas turunan dengan menggunakan pemecah masalah token yang ditentukan.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
TraceTokenValidationFailure(SecurityToken, String)

Melacak peristiwa kegagalan selama validasi token keamanan saat pelacakan diaktifkan.

TraceTokenValidationSuccess(SecurityToken)

Melacak validasi peristiwa token keamanan yang berhasil saat pelacakan diaktifkan.

ValidateToken(SecurityToken)

Saat ditimpa di kelas turunan, validasi token keamanan yang ditentukan. Token harus dari jenis yang diproses oleh kelas turunan.

WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

Saat ditimpa di kelas turunan, menserialisasikan klausa pengidentifikasi kunci yang ditentukan ke XML. Klausa pengidentifikasi kunci harus berjenis yang didukung oleh kelas turunan.

WriteToken(SecurityToken)

Saat ditimpa di kelas turunan, menserialisasikan token keamanan yang ditentukan ke string. Token harus dari jenis yang diproses oleh kelas turunan.

WriteToken(XmlWriter, SecurityToken)

Saat ditimpa di kelas turunan, menserialisasikan token keamanan yang ditentukan ke XML. Token harus dari jenis yang diproses oleh kelas turunan.

Berlaku untuk

Lihat juga