<transport> von <basicHttpBinding>

Definiert Eigenschaften, die Authentifizierungsparameter für den HTTP-Transport steuern.

<configuration>
  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding>
          <security>
            <transport>

Syntax

<basicHttpBinding>
  <binding>
    <security mode="None|Transport|Message|TransportWithMessageCredential|TransportCredentialOnly">
      <transport clientCredentialType="None|Basic|Digest|Ntlm|Windows"
                 proxyCredentialType="None|Basic|Digest|Ntlm|Windows"
                 realm="String">
        <extendedProtectionPolicy policyEnforcement="Never|WhenSupported|Always"
                                  protectionScenario="TransportSelected|TrustedProxy">
          <customServiceNames>
          </customServiceNames>
        </extendedProtectionPolicy>
      </transport>
    </security>
  </binding>
</basicHttpBinding>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

attribute BESCHREIBUNG
clientCredentialType – Gibt den Typ der Anmeldeinformationen an, der bei der Clientauthentifizierung mithilfe von HTTP-Authentifizierung verwendet werden soll. Der Standardwert ist None. Dieses Attribut ist vom Typ HttpClientCredentialType.
proxyCredentialType – Gibt den Typ der Anmeldeinformationen an, der bei der Clientauthentifizierung mit einem Proxy über HTTP innerhalb einer Domäne verwendet werden soll. Dies Attribut trifft nur zu, wenn das mode-Attribut dieses übergeordneten security-Elements Transport oder TransportCredentialsOnly lautet. Dieses Attribut ist vom Typ HttpProxyCredentialType.
realm Eine Zeichenfolge, die den vom HTTP-Authentifizierungsschema verwendeten Bereich für die Hashwert- oder Standardauthentifizierung angibt. Der Standardwert ist eine leere Zeichenfolge.
policyEnforcement Diese Enumeration gibt an, wann die ExtendedProtectionPolicy erzwungen werden soll.

1. Never – die Richtlinie wird nie erzwungen (erweiterter Schutz ist deaktiviert).
2. WhenSupported – die Richtlinie wird nur erzwungen, wenn der Client erweiterten Schutz unterstützt.
3. Always – die Richtlinie wird immer erzwungen. Clients, die erweiterten Schutz nicht unterstützen, werden nicht authentifiziert.
protectionScenario Diese Enumeration gibt das von der Richtlinie erzwungene Schutzszenario an.

clientCredentialType-Attribut

Wert Beschreibung
Keine Nachrichten werden nicht während der Übertragung gesichert.
Basic Gibt die Standardauthentifizierung an.
Digest Gibt die Digestauthentifizierung an.
Ntlm Gibt die NTLM-Authentifizierung an, wenn möglich, und ob die Windows-Authentifizierung fehlschlägt.
Windows Gibt die integrierte Windows-Authentifizierung an.

proxyCredentialType-Attribut

Wert Beschreibung
Keine – Nachrichten werden während der Übertragung nicht gesichert.
Basic Gibt die Standardauthentifizierung an, wie definiert in RFC 2617 – HTTP Authentication: Basic and Digest Authentication.
Digest Gibt die Digestauthentifizierung an, wie definiert in RFC 2617 – HTTP Authentication: Basic and Digest Authentication.
Ntlm Gibt die NTLM-Authentifizierung an, wenn möglich, und ob die Windows-Authentifizierung fehlschlägt.
Windows Gibt die integrierte Windows-Authentifizierung an.
Zertifikat Führt die Clientauthentifizierung mit einem Zertifikat aus. Diese Option funktioniert nur, wenn das Mode-Attribut des übergeordneten security-Elements auf Transport gesetzt ist. Sie funktioniert nicht, wenn es auf TransportCredentialOnly gesetzt ist.

Untergeordnete Elemente

Keine

Übergeordnete Elemente

Element BESCHREIBUNG
<security> Definiert die Sicherheitsfunktionen für die <basicHttpBinding>.

Beispiel

Im folgenden Beispiel wird die Verwendung der SSL-Transportsicherheit mit der Standardbindung veranschaulicht. Standardmäßig unterstützt die Standardbindung die HTTP-Kommunikation.

<system.serviceModel>
  <services>
    <service type="Microsoft.ServiceModel.Samples.CalculatorService"
             behaviorConfiguration="CalculatorServiceBehavior">
      <endpoint address=""
                binding="basicHttpBinding"
                bindingConfiguration="Binding1"
                contract="Microsoft.ServiceModel.Samples.ICalculator" />
    </service>
  </services>
  <bindings>
    <basicHttpBinding>
      <!-- Configure basicHttpBinding with Transport security -->
      <!-- mode and clientCredentialType set to None. -->
      <binding name="Binding1">
        <security mode="Transport">
          <transport clientCredentialType="None"
                     proxyCredentialType="None">
            <extendedProtectionPolicy policyEnforcement="WhenSupported"
                                      protectionScenario="TransportSelected">
              <customServiceNames>
              </customServiceNames>
            </extendedProtectionPolicy>
          </transport>
        </security>
      </binding>
    </basicHttpBinding>
  </bindings>
</system.serviceModel>

Siehe auch