Bagikan melalui


Cara: Mengonfigurasi Penerbit Sertifikat Lokal

Topik ini menjelaskan cara mengonfigurasi klien untuk menggunakan penerbit sertifikat lokal untuk token yang diterbitkan.

Seringkali, ketika klien berkomunikasi dengan layanan federasi, layanan menentukan alamat layanan token keamanan yang diharapkan untuk menerbitkan token yang akan digunakan klien untuk mengautentikasi dirinya ke layanan federasi. Dalam situasi tertentu, klien dapat dikonfigurasi untuk menggunakan penerbit sertifikat lokal.

Windows Communication Foundation (WCF) menggunakan penerbit sertifikat lokal dalam kasus di mana alamat penerbit sertifikat dari pengikatan federasi adalah http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous atau null. Dalam kasus seperti ini, ClientCredentials harus dikonfigurasi dengan alamat penerbit sertifikat lokal dan pengikatan yang digunakan untuk berkomunikasi dengan penerbit sertifikat tersebut.

Catatan

Jika properti SupportInteractive kelas ClientCredentials diatur ke true, alamat penerbit sertifikat lokal tidak ditentukan, dan alamat penerbit sertifikat yang ditentukan oleh <wsFederationHttpBinding> atau pengikatan federasi lainnya adalah http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/self, http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous, atau null, maka penerbit CardSpace Windows digunakan.

Untuk mengonfigurasi penerbit sertifikat lokal dalam kode

  1. Buat variabel jenis IssuedTokenClientCredential

  2. Atur variabel ke instans yang dikembalikan dari properti IssuedToken kelas ClientCredentials. Instans tersebut dikembalikan oleh properti ClientCredentials klien (diwarisi dari ClientBase<TChannel>) atau properti Credentials dari ChannelFactory:

    IssuedTokenClientCredential itcc = client.ClientCredentials.IssuedToken;
    
    Dim itcc As IssuedTokenClientCredential = client.ClientCredentials.IssuedToken
    
  3. Atur properti LocalIssuerAddress ke instans EndpointAddress baru, dengan alamat penerbit sertifikat lokal sebagai argumen ke konstruktor.

    itcc.LocalIssuerAddress = new EndpointAddress("http://fabrikam.com/sts");
    
    itcc.LocalIssuerAddress = New EndpointAddress("http://fabrikam.com/sts")
    

    Atau, buat instans Uri baru sebagai argumen ke konstruktor.

    itcc.LocalIssuerAddress = new EndpointAddress(new Uri("http://fabrikam.com/sts"),
        addressHeaders);
    
    itcc.LocalIssuerAddress = New EndpointAddress( _
    New Uri("http://fabrikam.com/sts"), addressHeaders)
    

    Parameter addressHeaders adalah array instans AddressHeader, seperti yang ditunjukkan.

    itcc.LocalIssuerAddress = new EndpointAddress(
        new Uri("http://fabrikam.com/sts"),
        EndpointIdentity.CreateDnsIdentity("fabrikam.com"),
        addressHeaders);
    
    itcc.LocalIssuerAddress = New EndpointAddress(New Uri("http://fabrikam.com/sts"), _
    EndpointIdentity.CreateDnsIdentity("fabrikam.com"), addressHeaders)
    
  4. Atur pengikatan untuk penerbit sertifikat lokal menggunakan properti LocalIssuerBinding.

    itcc.LocalIssuerBinding = new WSHttpBinding("LocalIssuerBinding");
    
    itcc.LocalIssuerBinding = New WSHttpBinding("LocalIssuerBinding")
    
  5. Opsional. Tambahkan perilaku titik akhir yang dikonfigurasi untuk penerbit sertifikat lokal dengan menambahkan perilaku tersebut ke koleksi yang dikembalikan oleh properti LocalIssuerChannelBehaviors.

    itcc.LocalIssuerChannelBehaviors.Add(myEndpointBehavior);
    
    itcc.LocalIssuerChannelBehaviors.Add(myEndpointBehavior)
    

Untuk mengonfigurasi penerbit sertifikat lokal dalam konfigurasi

  1. Buat elemen <localIssuer> sebagai turunan dari elemen <issuedToken> yang dirinya sendiri adalah turunan dari elemen <clientCredentials> dalam perilaku titik akhir.

  2. Atur atribut address ke alamat penerbit sertifikat lokal yang akan menerima permintaan token.

  3. Atur atribut binding dan bindingConfiguration ke nilai yang mereferensikan pengikatan yang sesuai untuk digunakan saat berkomunikasi dengan titik akhir penerbit sertifikat lokal.

  4. Opsional. Atur elemen <identitas> sebagai turunan dari elemen <localIssuer> dan tentukan informasi identitas untuk penerbit sertifikat lokal.

  5. Opsional. Atur elemen <header> sebagai turunan dari elemen <localIssuer> dan tentukan header tambahan yang diperlukan untuk menemukan alamat penerbit sertifikat lokal dengan benar.

Keamanan .NET Framework

Perhatikan bahwa jika alamat penerbit sertifikat dan pengikatan ditentukan untuk pengikatan tertentu, penerbit sertifikat lokal tidak digunakan untuk titik akhir yang menggunakan pengikatan tersebut. Klien yang berharap untuk selalu menggunakan penerbit sertifikat lokal harus memastikan bahwa mereka tidak menggunakan pengikatan seperti itu atau bahwa mereka memodifikasi pengikatan sehingga alamat penerbit adalah null.

Lihat juga