Megosztás:


SecurityBindingElement hitelesítési módok

A Windows Communication Foundation (WCF) számos módot kínál, amelyekkel az ügyfelek és a szolgáltatások hitelesítik egymást. Ezekhez a hitelesítési módokhoz létrehozhat biztonsági kötési elemeket az SecurityBindingElement osztály statikus metódusaival vagy konfigurációval. Ez a témakör röviden ismerteti a 18 hitelesítési módot.

Az elem egyik hitelesítési módhoz való használatára vonatkozó példa: How to: Create a SecurityBindingElement for a Specified Authentication Mode.

Alapszintű konfigurációs programozás

Az alábbi eljárás azt ismerteti, hogyan állíthatja be a hitelesítési módot egy konfigurációs fájlban.

A hitelesítési mód beállítása a konfigurációban

  1. A kötések elemhez<>

  2. Gyermekelemként adjon hozzá egy <kötési> elemet az <customBinding> elemhez.

  3. <security> Elem hozzáadása az <binding> elemhez.

  4. Állítsa be az authenticationMode attribútumot az alábbi értékek egyikére. Az alábbi kód például a módot a következőre AnonymousForCertificateállítja.

    <bindings>
      <customBinding>
        <binding name="SecureCustomBinding">
         <security authenticationMode ="AnonymousForCertificate" />
        </binding>
      </customBinding>
    </bindings>
    

A mód programozott beállítása

  1. Határozza meg a visszatérési típust, amely a következők egyike lehet: SymmetricSecurityBindingElement, TransportSecurityBindingElement, AsymmetricSecurityBindingElementvagy SecurityBindingElement.

  2. Hívja meg az osztály megfelelő statikus metódusát SecurityBindingElement . A következő kód például meghívja a metódust CreateAnonymousForCertificateBindingElement .

    SymmetricSecurityBindingElement b =
        SecurityBindingElement.
        CreateAnonymousForCertificateBindingElement();
    
    Dim b As SymmetricSecurityBindingElement = _
    SecurityBindingElement.CreateAnonymousForCertificateBindingElement()
    
  3. A kötési elem használatával hozza létre az egyéni kötést. További információ: Egyéni kötések.

Mód leírásai

NévtelenTanúsítványhoz

Ezzel a hitelesítési móddal az ügyfél névtelen, és a szolgáltatás hitelesítése X.509-tanúsítvánnyal történik. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateAnonymousForCertificateBindingElement elem. Másik lehetőségként állítsa az authenticationMode elem attribútumát a <security> következőre AnonymousForCertificate: .

NévtelenTerjesztésértSslTárgyalva

Ezzel a hitelesítési móddal az ügyfél névtelen, és a szolgáltatás hitelesítése egy futásidőben egyeztetett X.509-tanúsítvánnyal történik. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateSslNegotiationBindingElement érték, ha az első paraméter értékét false adja át. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre AnonymousForSslNegotiated: .

CertificateOverTransport

Ezzel a hitelesítési móddal az ügyfél egy X.509-tanúsítvánnyal hitelesít, amely a SOAP-rétegben támogató jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás hitelesítése egy X.509-tanúsítvánnyal történik az átviteli rétegben. A biztonsági kötési elem a TransportSecurityBindingElement metódus által visszaadott CreateCertificateOverTransportBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre CertificateOverTransport: .

Kibocsátott jelkép

Ezzel a hitelesítési móddal az ügyfél nem hitelesíti magát a szolgáltatásban; Ehelyett az ügyfél hitelesíti magát egy biztonsági jogkivonat-szolgáltatásban, és egy SAML-jogkivonatot kap, amelyet ezután bemutat a kiszolgálónak, hogy bizonyítsa a megosztott kulcsokkal kapcsolatos ismereteit. A szolgáltatás nem hitelesítve van az ügyfél számára, de a biztonsági jogkivonat-szolgáltatás a kibocsátott jogkivonat részeként titkosítja a megosztott kulcsot, hogy csak a szolgáltatás tudja visszafejteni a kulcsot. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateIssuedTokenBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre IssuedToken: .

KibocsátottTokenAzTanúsítványért

Ezzel a hitelesítési móddal az ügyfél nem hitelesíti magát a szolgáltatásban; Ehelyett az ügyfél hitelesíti magát egy biztonsági jogkivonat-szolgáltatásban, és egy SAML-jogkivonatot kap, amelyet ezután bemutat a kiszolgálónak, hogy bizonyítsa a megosztott kulcsokkal kapcsolatos ismereteit. A kibocsátott jogkivonat a SOAP rétegben támogató vagy tulajdonosi jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás X.509-tanúsítvány használatával hitelesíti az ügyfelet. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateIssuedTokenForCertificateBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre IssuedTokenForCertificate: .

KiadottTokenAzSslTárgyaltÉrtelmében

Ezzel a hitelesítési móddal az ügyfél nem hitelesíti magát a szolgáltatásban; Ehelyett az ügyfél hitelesíti magát egy biztonsági jogkivonat-szolgáltatásban, és egy SAML-jogkivonatot kap, amelyet ezután bemutat a kiszolgálónak, hogy bizonyítsa a megosztott kulcsokkal kapcsolatos ismereteit. A kibocsátott jogkivonat a SOAP rétegben támogató vagy tulajdonosi jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás hitelesítése X.509-tanúsítvánnyal történik. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateIssuedTokenForSslBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre IssuedTokenForSslNegotiated: .

KibocsátottTokenSzállításonKeresztül

Ezzel a hitelesítési móddal az ügyfél nem hitelesíti magát a szolgáltatásban; Ehelyett az ügyfél hitelesíti magát egy biztonsági jogkivonat-szolgáltatásban, és egy SAML-jogkivonatot kap, amelyet ezután bemutat a kiszolgálónak, hogy bizonyítsa a megosztott kulcsokkal kapcsolatos ismereteit. A kibocsátott jogkivonat a SOAP rétegben támogató vagy tulajdonosi jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás hitelesítése egy X.509-tanúsítvánnyal történik az átviteli rétegben. A biztonsági kötési elem a TransportSecurityBindingElement metódus által visszaadott CreateIssuedTokenOverTransportBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre IssuedTokenOverTransport: .

Kerberos

Ezzel a hitelesítési móddal az ügyfél Kerberos-jegy használatával hitelesíti a szolgáltatást. Ugyanez a jegy kiszolgálóhitelesítést is biztosít. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateKerberosBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre Kerberos: .

Feljegyzés

A hitelesítési mód használatához a szolgáltatásfiókot egy egyszerű szolgáltatásnévvel (SPN) kell társítani. Ehhez futtassa a szolgáltatást a NETWORK SERVICE fiók vagy a HELYI RENDSZER fiók alatt. Másik lehetőségként az SetSpn.exe eszközzel hozzon létre egy egyszerű szolgáltatásnevet a szolgáltatásfiókhoz. Az ügyfélnek mindkét esetben a servicePrincipalName<> megfelelő egyszerű szolgáltatásnevet. További információ: Szolgáltatás identitása és hitelesítése.

Feljegyzés

A Kerberos hitelesítési mód használata esetén a Anonymous megszemélyesítési Delegation szintek nem támogatottak.

KerberosOverTransport

Ezzel a hitelesítési móddal az ügyfél Kerberos-jegy használatával hitelesíti a szolgáltatást. A Kerberos-jogkivonat a SOAP rétegben támogató jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás hitelesítése egy X.509-tanúsítvánnyal történik az átviteli rétegben. A biztonsági kötési elem a TransportSecurityBindingElement metódus által visszaadott CreateKerberosOverTransportBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre KerberosOverTransport: .

Feljegyzés

A hitelesítési mód használatához a szolgáltatásfiókot spN-hez kell társítani. Ehhez futtassa a szolgáltatást a NETWORK SERVICE fiók vagy a HELYI RENDSZER fiók alatt. Másik lehetőségként az SetSpn.exe eszközzel hozzon létre egy egyszerű szolgáltatásnevet a szolgáltatásfiókhoz. Az ügyfélnek mindkét esetben a servicePrincipalName<> megfelelő egyszerű szolgáltatásnevet. További információ: Szolgáltatás identitása és hitelesítése.

KölcsönösTanúsítvány

Ezzel a hitelesítési móddal az ügyfél egy X.509-tanúsítvánnyal hitelesít, amely a SOAP-rétegben támogató jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás hitelesítése szintén X.509-tanúsítvánnyal történik. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateMutualCertificateBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre MutualCertificate: .

MutualCertificateDuplex

Ezzel a hitelesítési móddal az ügyfél egy X.509-tanúsítvánnyal hitelesít, amely a SOAP-rétegben támogató jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatás hitelesítése szintén X.509-tanúsítvánnyal történik. A kötést AsymmetricSecurityBindingElement a CreateMutualCertificateDuplexBindingElement metódus adja vissza. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre MutualCertificateDuplex: .

Közös SSL-tárgyalás

Ezzel a hitelesítési móddal az ügyfél és a szolgáltatás X.509-tanúsítványokkal hitelesít. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateSslNegotiationBindingElement érték, ha az első paraméter értékét true adja át. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre MutualSslNegotiated: .

BiztonságosBeszélgetés

A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateSecureConversationBindingElement elem. Ez a metódus egy SecurityBindingElement paramétert használ, amelyet az inicializálás során használnak a biztonságos munkamenet létrehozásához. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre SecureConversation: .

Ha nincs megadva bootstrap-kötés, akkor a rendszer a SspiNegotiated hitelesítési módot használja a rendszerindításhoz.

SSPI Tárgyalás

Ezzel a hitelesítési móddal a rendszer egy tárgyalási protokollt használ az ügyfél- és kiszolgálóhitelesítés végrehajtásához. Lehetőség szerint Kerberost használnak; ellenkező esetben az NT LanMan (NTLM) lesz használatban. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateSspiNegotiationBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre SspiNegotiated: .

SspiNegociáltSzállításonKeresztül

Ezzel a hitelesítési móddal a rendszer egy tárgyalási protokollt használ az ügyfél- és kiszolgálóhitelesítés végrehajtásához. Lehetőség szerint Kerberos protokollt használnak; ellenkező esetben az NTLM lesz használatban. Az eredményül kapott jogkivonat a SOAP-rétegben támogató jogkivonatként jelenik meg; vagyis egy jogkivonat, amely aláírja az üzenet aláírását. A szolgáltatást az átviteli rétegen egy X.509-tanúsítvány is hitelesíti. A biztonsági kötési elem a TransportSecurityBindingElement metódus által visszaadott CreateSspiNegotiationOverTransportBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre SspiNegotiatedOverTransport: .

FelhasználónévATanúsítványhoz

Ezzel a hitelesítési móddal az ügyfél a SOAP-rétegben aláírt támogató jogkivonatként megjelenő felhasználónév-jogkivonat használatával hitelesíti a szolgáltatást; vagyis az üzenetaláírás által aláírt jogkivonat. A szolgáltatás X.509-tanúsítvány használatával hitelesíti az ügyfelet. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateUserNameForCertificateBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre UserNameForCertificate: .

UserNameForCertificate A hitelesítési módhoz az ügyfélnek és a szolgáltatásnak is WS-Security 1.1-et kell használnia.

FelhasználónévAzSslTárgyaláshoz

Ezzel a hitelesítési móddal az ügyfél hitelesítése felhasználónév-jogkivonattal történik, amely a SOAP-rétegben aláírt támogató jogkivonatként jelenik meg; vagyis az üzenetaláírás által aláírt jogkivonat. A szolgáltatás hitelesítése X.509-tanúsítvánnyal történik. A biztonsági kötési elem a SymmetricSecurityBindingElement metódus által visszaadott CreateUserNameForSslBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre UserNameForSslNegotiated: .

Felhasználónév Átvitelen

Ezzel a hitelesítési móddal az ügyfél a SOAP-rétegben aláírt támogató jogkivonatként megjelenő felhasználónév-jogkivonat használatával hitelesít; vagyis az üzenetaláírás által aláírt jogkivonat. A szolgáltatás hitelesítése egy X.509-tanúsítvánnyal történik az átviteli rétegben. A biztonsági kötési elem a TransportSecurityBindingElement metódus által visszaadott CreateUserNameOverTransportBindingElement elem. Másik lehetőségként állítsa az attribútumot a authenticationMode következőre UserNameOverTransport: .

Lásd még