Udostępnij za pośrednictwem


<<transport> basicHttpBinding>

Definiuje właściwości kontrolujące parametry uwierzytelniania dla transportu HTTP.

<Konfiguracji>
  <System.servicemodel>
    <Powiązania>
      <basicHttpBinding>
        <Wiązania>
          <Zabezpieczeń>
            <Transportu>

Składnia

<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>

Atrybuty i elementy

W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.

Atrybuty

Atrybut Opis
Clientcredentialtype — Określa typ poświadczeń do użycia podczas uwierzytelniania klienta przy użyciu uwierzytelniania HTTP. Wartość domyślna to None. Ten atrybut jest typu HttpClientCredentialType.
proxyCredentialType — Określa typ poświadczeń do użycia podczas przeprowadzania uwierzytelniania klienta z domeny przy użyciu serwera proxy za pośrednictwem protokołu HTTP. Ten atrybut ma zastosowanie tylko wtedy, gdy mode atrybut elementu nadrzędnego security to Transport lub TransportCredentialsOnly. Ten atrybut jest typu HttpProxyCredentialType.
Obszaru Ciąg określający obszar używany przez schemat uwierzytelniania HTTP na potrzeby uwierzytelniania szyfrowego lub podstawowego. Wartość domyślna to pusty ciąg.
Policyenforcement Ta wyliczenie określa, kiedy ExtendedProtectionPolicy należy wymusić.

1. Nigdy — zasady nigdy nie są wymuszane (ochrona rozszerzona jest wyłączona).
2. Po zakończeniu obsługi — zasady są wymuszane tylko wtedy, gdy klient obsługuje ochronę rozszerzoną.
3. Zawsze — zasady są zawsze wymuszane. Klienci, którzy nie obsługują rozszerzonej ochrony, nie będą się uwierzytelniać.
Protectionscenario Wyliczenie określa scenariusz ochrony wymuszany przez zasady.

clientCredentialType, atrybut

Wartość Opis
Brak Wiadomości nie są zabezpieczone podczas transferu.
Podstawowa Określa uwierzytelnianie podstawowe.
Szyfrowane Określa uwierzytelnianie szyfrowe.
Ntlm Określa uwierzytelnianie NTLM, jeśli to możliwe, i jeśli uwierzytelnianie systemu Windows zakończy się niepowodzeniem.
Windows Określa zintegrowane uwierzytelnianie systemu Windows.

proxyCredentialType, atrybut

Wartość Opis
Brak - Wiadomości nie są zabezpieczone podczas transferu.
Podstawowa Określa uwierzytelnianie podstawowe zdefiniowane przez RFC 2617 — uwierzytelnianie HTTP: uwierzytelnianie podstawowe i szyfrowane.
Szyfrowane Określa uwierzytelnianie szyfrowane zgodnie z definicją protokołu RFC 2617 — uwierzytelnianie HTTP: uwierzytelnianie podstawowe i szyfrowane.
Ntlm Określa uwierzytelnianie NTLM, jeśli to możliwe, i jeśli uwierzytelnianie systemu Windows zakończy się niepowodzeniem.
Windows Określa zintegrowane uwierzytelnianie systemu Windows.
Certyfikat Wykonuje uwierzytelnianie klienta przy użyciu certyfikatu. Ta opcja działa tylko wtedy, gdy Mode atrybut elementu nadrzędnego security jest ustawiony na Transport i nie będzie działać, jeśli jest ustawiony na TransportCredentialOnly.

Elementy podrzędne

Brak

Elementy nadrzędne

Element Opis
<Zabezpieczeń> Definiuje możliwości zabezpieczeń dla< elementu basicHttpBinding>.

Przykład

W poniższym przykładzie pokazano użycie zabezpieczeń transportu SSL z podstawowym powiązaniem. Domyślnie podstawowe powiązanie obsługuje komunikację HTTP.

<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>

Zobacz też