Partager via


<transport> de <basicHttpBinding>

Définit les propriétés qui déterminent les paramètres d'authentification pour le transport HTTP.

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

Syntaxe

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

Attributs et éléments

Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.

Attributs

Attribut Description
clientCredentialType - Spécifie le type d’information d’identification à utiliser lors de l’exécution de l’authentification du client à l’aide de l’authentification par HTTP. Par défaut, il s’agit de None. Cet attribut est de type HttpClientCredentialType.
proxyCredentialType - Spécifie le type d’information d’identification à utiliser lors de l’exécution de l’authentification du client à partir d’un domaine utilisant un proxy sur HTTP. Cet attribut est applicable uniquement lorsque l'attribut mode de l'élément security parent est Transport ou TransportCredentialsOnly. Cet attribut est de type HttpProxyCredentialType.
realm Chaîne qui spécifie le domaine utilisé par la méthode d'authentification HTTP pour l'authentification Digest ou de base. La valeur par défaut est une chaîne vide.
policyEnforcement Cette énumération spécifie à quel moment ExtendedProtectionPolicy doit être appliqué.

1. Never : la stratégie n’est jamais appliquée (la protection étendue est désactivée).
2. WhenSupported : la stratégie est appliquée uniquement si le client prend en charge la protection étendue.
3. Always : la stratégie est toujours appliquée. Les clients qui ne prennent pas en charge la protection étendue ne pourront pas être authentifiés.
protectionScenario Cette énumération spécifie le scénario de protection appliqué par la stratégie.

Attribut clientCredentialType

Valeur Description
None Les messages ne sont pas sécurisés pendant le transfert.
De base Spécifie l'authentification de base.
Digest Spécifie l’authentification Digest.
Ntlm Spécifie l'authentification NTLM le cas échéant et en cas d'échec d'authentification Windows.
Windows Spécifie l'authentification intégrée Windows.

Attribut proxyCredentialType

Valeur Description
None - Les messages ne sont pas sécurisés pendant le transfert.
De base Spécifie l’authentification de base telle que définie par RFC 2617 – Authentification HTTP : Authentification de base et Digest.
Digest Spécifie l'authentification Digest telle que définie par RFC 2617 – Authentification HTTP : Authentification de base et Digest.
Ntlm Spécifie l'authentification NTLM le cas échéant et en cas d'échec d'authentification Windows.
Windows Spécifie l'authentification intégrée Windows.
Certificat Effectue l'authentification du client à l'aide d'un certificat. Cette option fonctionne uniquement si l'attribut Mode de l'élément security parent est configuré pour le transport et ne fonctionnera pas s'il a la valeur TransportCredentialOnly.

Éléments enfants

None

Éléments parents

Élément Description
<security> Définit les capacités de sécurité pour <basicHttpBinding>.

Exemple

L'exemple suivant montre l'utilisation de la sécurité de transport SSL avec la liaison de base. Par défaut, la liaison de base prend en charge la communication 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>

Voir aussi