Par Pierre Couzy de Microsoft, et Rochdi Chakroun et Geoffrey Daniel de Winwise.
Présentation de .NET Services
Dans .NET Services il y a entre autres:
- zone d'orchestration de service pour la communication avec Azure
- Contrôle s'accès: à qui ai-je affaire?
Services de connectivité
Intérêt:
- enlever le problème de l'exposition d'un service, car en entreprise c'est laborieux de mettre à disposition du public un service.
- simplifier les relations bidirectionnelles en rendant la découverte facile.
Offfre la traversée NAT-NAT en passant par le relais Azure qui agit en tant qu'intermédiaire.
Pour ce qui est du monde Microsoft, la communication se fait au travers de bindings WCF donc c'est très facile à utiliser pour les développeurs .NET WCF actuels. Concrètement, c'est netTcpRelayBinding.
Principe de mise en relation:
- le serveur s'enregistre auprès du Service Bus, via un frontal.
- Le client envoie sa demande au frontal, qui la retransmet au serveur.
Démo: transformation d'un service WCF netTcpBinding en service passant par le nuage. Il suffit d'ajouter une référence à l'assembly correspondant et de configurer le binding sur netTcpRelayBinding.
Il est possible d'enregistrer plusieurs serveurs auprès du nuage grâce au NetEventRelayBinding.
Un autre Binding, NetTcpRelayBinding (Hybrid), permet une communication directe entre le client et le serveur; à ce moment, .NET Services ne sert plus qu'à mettre en relation client et serveur. Dans ce mode, .NET Services utilise un algorithme prédictif pour deviner le prochain port sur lequel doit avoir lieu la communication.
Contrôle d'accès
Le problème est d'unifier l'identification sur Internet comme elle l'est au sein d'une entreprise. L'identité n'est pas juste un login/mot de passe, ce peut être des rôles et autre. Cela est modélisé par les claims, que l'on place dans des jetons/token pour les transporter physiquement. Ces jetons sont distribués par des services de distribution de jetons / STS.
Mode de fonctionnement:
L'idée est d'avoir un serveur Access Control (c'est un STS) qui traduit les jetons locaux (exemple: Actice Directory) en jetons compris par l'autre partie grâce à des règles de traduction.
Gestion de processus
On peut faire tourner un Workflow de Workflow Foundation directement dans .NET Services. On passe par le même portail d'administration, et l'on peut lancer de nouvelles instances par API ou via le portail.
Quelques activités standard WF existent, plus des activités qui sont propres à la communication client/serveur.
Comments