protection étendue
La protection étendue est un mécanisme permettant de lier un canal sécurisé externe tel que SSL à des protocoles d’authentification de canal interne tels que Kerberos-APREQ et l’authentification d’en-tête HTTP.
Le concept de protection étendue est défini dans RFC2743.
La protection étendue, lorsqu’elle est disponible, est configurée automatiquement sur le client, mais peut nécessiter une configuration sur le serveur pour les scénarios non par défaut.
Configurations prises en charge
La protection étendue est prise en charge lors de l’utilisation de WS_HTTP_CHANNEL_BINDING avec des liaisons de sécurité à l’aide de protocoles d’authentification intégrée Windows tels que WS_HTTP_HEADER_AUTH_SECURITY_BINDING et WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING. Il est configuré via les propriétés de sécurité suivantes :
- WS_SECURITY_PROPERTY_EXTENDED_PROTECTION_POLICY
- WS_SECURITY_PROPERTY_EXTENDED_PROTECTION_SCENARIO
- WS_SECURITY_PROPERTY_SERVICE_IDENTITIES
Les configurations suivantes impliquant une protection étendue sont possibles :
Client
- WS_SSL_TRANSPORT_SECURITY_BINDING est utilisé avec WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING ou WS_HTTP_HEADER_AUTH_SECURITY_BINDING. Dans cette configuration, la liaison d’authentification est liée à la connexion SSL via un jeton de protection étendu qui est automatiquement extrait de la connexion SSL.
- Aucun protocole SSL n’est utilisé et WS_HTTP_HEADER_AUTH_SECURITY_BINDING est défini. La liaison d’authentification est liée via le nom principal du serveur (SPN), qui est déterminé automatiquement à partir du WS_ENDPOINT_ADDRESS.
Serveur
- WS_SSL_TRANSPORT_SECURITY_BINDING est utilisé avec WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING ou WS_HTTP_HEADER_AUTH_SECURITY_BINDING. Dans cette configuration, la liaison d’authentification est liée à la connexion SSL via un jeton de protection étendu extrait de la connexion SSL et validé automatiquement.
- Aucun protocole SSL n’est utilisé et WS_HTTP_HEADER_AUTH_SECURITY_BINDING est défini. La liaison d’authentification est liée via le nom principal du serveur (SPN), qui doit être fourni via WS_SECURITY_PROPERTY_SERVICE_IDENTITIES. Lorsqu’un message est reçu, le SPN est extrait et validé pour une correspondance exacte avec les noms de service fournis. Le fait de ne pas fournir de spN équivaut à définir WS_EXTENDED_PROTECTION_POLICY_NEVER.
- Aucun protocole SSL n’est utilisé, WS_EXTENDED_PROTECTION_SCENARIO_BOUND_SERVER est spécifié et WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING est utilisé. Dans cette configuration, WS_SECURITY_PROPERTY_SERVICE_IDENTITIES ne doit pas être défini. Aucune vérification SPN n’est effectuée au-delà de ce qui est effectué dans le cadre du protocole Kerberos.
- WS_EXTENDED_PROTECTION_SCENARIO_TERMINATED_SSL est spécifié et WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING ou WS_HTTP_HEADER_AUTH_SECURITY_BINDING est utilisé. WS_SECURITY_PROPERTY_SERVICE_IDENTITIES devez être défini.
Plateformes prises en charge
La protection étendue est prise en charge sur les plateformes avec prise en charge dans le système d’exploitation. Windows 7 et Windows Server 2008 R2 fournissent une prise en charge intégrée. D’autres plateformes peuvent nécessiter une mise à jour.
Si le système d’exploitation du serveur ne fournit pas de telle prise en charge, toutes les informations de protection étendues envoyées par le client sont ignorées. Par conséquent, les clients qui utilisent une protection étendue peuvent communiquer avec un tel serveur, mais l’avantage de sécurité est perdu. Sur le client, WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING combiné à WS_SSL_TRANSPORT_SECURITY_BINDING prend uniquement en charge la protection étendue sur Vista et versions ultérieures.
REMARQUE : la protection étendue indisponible n’empêche pas l’utilisation d’une configuration particulière.
Interopérabilité
Un serveur configuré par défaut peut communiquer avec les clients SOAP, qu’ils utilisent ou non une protection étendue. La seule exception étant Windows XP et les clients WWSAPI Windows Server 2003 qui ont été mis à jour pour prendre en charge la protection étendue et utiliser à la fois WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING et WS_SSL_TRANSPORT_SECURITY_BINDING. Pour prendre en charge ces clients WS_EXTENDED_PROTECTION_POLICY_NEVER doivent être spécifiés par le serveur. Les serveurs configurés avec WS_EXTENDED_PROTECTION_POLICY_ALWAYS rejettent la communication des clients qui n’utilisent pas la protection étendue. Sur le client, WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING combiné à WS_SSL_TRANSPORT_SECURITY_BINDING entraîne l’envoi du message à l’aide de l’encodage de transfert en bloc HTTP sur Vista et versions ultérieures. Cela peut entraîner des problèmes d’interopérabilité avec les serveurs qui ne prennent pas en charge le transfert en bloc.
Les énumérations/constantes suivantes font partie de la protection étendue :
Les stuctures suivants font partie de la protection étendue :