Exporter (0) Imprimer
Développer tout

Sécurisation et authentification d'une connexion Service Bus

Mis à jour: juin 2014

Cette section décrit les processus spécifiques à l'utilisation de l'authentification sur Microsoft Azure Service Bus.

Les applications qui utilisent Service Bus doivent réaliser des tâches de sécurité à deux niveaux. Tout d'abord, les services exposés pour être utilisés par Service Bus sont des ressources. Par conséquent, leur accès -- à des fins de configuration et d'enregistrement ou pour invoquer la fonctionnalité du service -- nécessite une authentification et une autorisation à l'aide de jetons du service Contrôle d'accès Windows Azure. Deuxièmement, quand l'autorisation d'interagir avec le service a été accordée par Service Bus, le service a ses propres considérations de sécurité associées à l'authentification, à l'autorisation, au chiffrement et aux signatures nécessaires pour l'échange de messages lui-même. Ce deuxième ensemble de questions de sécurité n'a rien à voir avec la fonctionnalité de Service Bus ; il s'agit simplement du service et de ses clients.

Dans le premier cas, l'authentification et l'autorisation d'utiliser un service exposé par Service Bus sont contrôlées par le service Access Control et il est possible d'y accéder par programme via l'API Service Bus. Il existe quatre types d'authentification disponibles actuellement :

Dans le deuxième cas, le service d'origine lui-même applique généralement une certaine sécurité de bout en bout qui spécifie la sécurité au niveau du message (comme le chiffrement du message) et la sécurité au niveau du transport (comme Windows ou NTLM). La sécurité d'une conversation de bout en bout suit le modèle de programmation Windows Communication Foundation (WCF) et est décrite de façon plus complète dans la rubrique Securing Servicesde la documentation WCF. Par conséquent, bien que les rubriques suivantes contiennent une analyse générale de la sécurité de bout en bout, elles se concentrent surtout sur les fonctionnalités uniques à un service configuré pour utiliser Service Bus. Pour plus d'informations sur l'authentification Service Bus et Access Control, consultez Building Applications that Use Access Control Services.

Chaque liaison de relais Service Bus comporte un élément de liaison de sécurité (par exemple, la classe NetTcpRelaySecurityElement exécute les fonctions de sécurité pour NetTcpRelayBinding) qui contient les valeurs de sécurité suivantes que vous pouvez spécifier par programme ou dans un fichier de configuration.

Mode
Abréviation de mode de sécurité de bout en bout, cette valeur définit la sécurité sur l'échange de messages via Service Bus. La valeur par programme dépend de la liaison de relais spécifique ; par exemple, la classe Microsoft.ServiceBus.EndToEndSecurityMode prend en charge la liaison NetTcpRelayBinding et la valeur Microsoft.ServiceBus.EndToEndWebHttpSecurityMode réalise ce service conjointement avec la liaison WebHttpRelayBinding. Si elle est utilisée avec la liaison NetTcpRelayBinding, cette propriété peut être définie sur Microsoft.ServiceBus.EndToEndSecurityMode.None, Microsoft.ServiceBus.EndToEndSecurityMode.Message, Microsoft.ServiceBus.EndToEndSecurityMode.Transport ou Microsoft.ServiceBus.EndToEndSecurityMode.TransportWithMessageCredential. Microsoft.ServiceBus.EndToEndSecurityMode.Transport est la valeur par défaut, ce qui signifie que les paramètres de sécurité propres au transport sont activés. Si vous utilisez un paramètre qui inclut Microsoft.ServiceBus.EndToEndSecurityMode.Message ou Microsoft.ServiceBus.EndToEndSecurityMode.Transport, vous devez définir des propriétés supplémentaires. En général, la valeur Mode suit le modèle de programmation de sécurité WCF standard.

Message
Définit la sécurité par message si vous définissez la sécurité des messages de bout en bout sur Microsoft.ServiceBus.EndToEndSecurityMode.Message ou sur TransportWithMessageCredential. La définition de l'une de ces valeurs pour la propriété Mode requiert que cette propriété soit aussi définie pour spécifier le type d'informations d'identification utilisé ainsi que l'algorithme utilisé permettant d'obtenir ces dernières. Comme avec Mode, la définition de la sécurité des messages suit le modèle de programmation WCF.

Transport
Cette propriété est un wrapper pour les propriétés de sécurité uniques à un élément de liaison de transport de liaison donné. Par exemple, la classe Microsoft.ServiceBus.RelayedOnewayTransportSecurity expose et implémente le paramètre Microsoft.ServiceBus.RelayedOnewayTransportSecurity.ProtectionLevel sur les liaisons NetEventRelayBinding et NetOnewayRelayBinding. En revanche, le type Microsoft.ServiceBus.HttpRelayTransportSecurity définit les informations d'identification de proxy pour les liaisons BasicHttpRelayBinding et WS2007HttpRelayBinding. Comme avec les propriétés précédentes, la sécurité de Transport suit en général le modèle de sécurité WCF.

RelayClientAuthenticationType
Contrôle si les clients d'un service doivent présenter un jeton de sécurité émis par Access Control à Service Bus lorsqu'il envoie des messages. Par conséquent, cette propriété de sécurité est propre à Service Bus et est le sujet des rubriques dans cette section de la documentation. Les services doivent toujours s'authentifier auprès de Access Control et présenter un jeton d'autorisation à Service Bus ; sinon, ils ne peuvent pas enregistrer de points de terminaison, ce qui engage des ressources Service Bus. Toutefois, les clients doivent s'authentifier auprès de Service Bus seulement si le RelayClientAuthenticationType est défini sur RelayAccessToken. La définition du RelayClientAuthenticationType sur Microsoft.ServiceBus.RelayClientAuthenticationType.None abandonne la nécessité d'un jeton. Si vous fournissez votre propre authentification ou si vous n'avez pas besoin d'authentification, il se peut que vous renonciez à l'authentification du client (expéditeur) dans la branche Service Bus de la communication. La valeur par défaut est RelayAccessToken.

En outre, chaque liaison contient la propriété Scheme, qui définit le schéma utilisé pour coder les informations. Pour les liaison HTTP (telle que BasicHttpRelayBinding, le schéma par défaut est HTTPS, ce qui inclut ses propres protocoles de sécurité.

Dans cette section

Afficher:
© 2014 Microsoft