Cet article est une introduction à Docker sur Windows et présente comment mettre en oeuvre SQL Server dans un container docker à des fins de tests et développement. SQL Server est relativement lourd à installer « à l’ancienne », c’est donc un bon exemple pour illustrer l’intérêt de Docker. C’est ce que j’ai fait sur mon poste […]
Comment détecter la veille prolongée du système depuis un service Windows
Les événements de mise en veille prolongée (Sleep / Hibernate) peuvent s’avérer indispensables pour une application connectée, car les connexions vont être interrompues. Cet article présente deux approches: la première basée sur l’API standard SystemEvents, qui pose problème dans un service Windows; l’autre basée sur WMI qui fonctionnera dans tous les cas de figure (pour […]
Sur le sens du concept des « Claims »
La première fois que j’ai vu le mot « claim », j’ai ressenti un certain inconfort, je n’arrivais pas à m’en faire une représentation claire. Bien sûr, c’était dans le contexte de la gestion des permissions utilisateurs, et je le traduisais donc par « droit ». Je suppose que c’est ce que font la plupart des gens dans le […]
Sécuriser des WebApi avec OAuth2 et Client Credentials?
J’ai déjà eu à implémenter des applications clientes compatibles OAuth (1 et 2), c’est-à-dire côté consommateur de ressources protégées, mais ce n’est que récemment que je me suis intéressé à la mise en place d’une solution de sécurité pour un ensemble d’applications. J’ai logiquement étudié ce qui se fait avec OAuth 2 et OpenID Connect […]
De la visibilité du modèle conceptuel
Très récemment, j’ai visionné une présentation de George Fairbanks intitulée Building Theories is Building Value. Fairbanks est aussi l’auteur d’un livre de référence sur l’architecture logicielle: Just Enough Software Architecture: A Risk-Driven Approach (2010). C’est l’un des meilleurs livres que j’ai lu en la matière. Au milieu de sa présentation, en plus d’être captivé, je […]
Terminer proprement un programme console
Les programmes console ne sont pas morts: il est courant de permettre à un service Windows d’être lancé en mode console, et ASP.NET Core est initialement prévu pour être exécuté en mode console (en self host). Dans ce contexte, se pose rapidement le problème de terminer proprement le contexte d’exécution (libérer les ressources IDisposable, éventuellement […]