<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>c2i.fr - Azure</title><link>http://www.c2i.fr:80/Tags/Azure</link><description>c2i.fr - Azure</description><item><title>L'accélérateur Windows Azure</title><link>http://www.c2i.fr:80/actualites/l-accelerateur-windows-azure</link><description>&lt;p&gt;&lt;img style="float: left;" alt="" src="/Media/Default/BlogPost/actualites/azure.png" width="300" height="300" /&gt;Apr&amp;egrave;s l'excellent programme "Acc&amp;eacute;l&amp;eacute;rateur Windows 8" de Microsoft, ils lancent l'acc&amp;eacute;l&amp;eacute;rateur Windows Azure.&lt;/p&gt;
&lt;p&gt;Pour m&amp;eacute;moire, l'Acc&amp;eacute;l&amp;eacute;rateur Windows 8 &amp;eacute;tait un programme ou les &amp;eacute;quipes de Microsoft suivait votre projet (gratuitement) avec des conseils techniques (et de design) tr&amp;egrave;s, tr&amp;egrave;s int&amp;eacute;ressant. Il fallait bien&amp;nbsp;entendu avoir un vrai projet.&lt;/p&gt;
&lt;p&gt;Et bien l'&amp;eacute;quipe a eu la bonne id&amp;eacute;e de faire de m&amp;ecirc;me.&lt;/p&gt;
&lt;p&gt;Donc si vous avez un projet Azure, je ne saurais trop vous conseiller de vous inscrire au plus vite.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/fr-fr/windowsazure/accelerateur-windows-azure"&gt;http://msdn.microsoft.com/fr-fr/windowsazure/accelerateur-windows-azure&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 24 Oct 2012 14:12:03 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/l-accelerateur-windows-azure</guid></item><item><title>Améliorations des services de Windows Azure Mobile Services</title><link>http://www.c2i.fr:80/actualites/ameliorations-des-services-de-windows-azure-mobile-services</link><description>&lt;p&gt;&lt;img style="float: left; margin: 0px 20px 0px 0px;" alt="" src="http://www.c2i.fr/Media/Default/BlogPost/actualites/azure.png" width="300" height="300" /&gt;D&amp;eacute;cidemment, en ce moment, il ne se passe pas une semaine sans que &lt;a href="http://weblogs.asp.net/scottgu/archive/2012/10/16/windows-azure-mobile-services-new-support-for-ios-apps-facebook-twitter-google-identity-emails-sms-blobs-service-bus-and-more.aspx"&gt;Scott Guthrie annonce des nouveaut&amp;eacute;s sur la plateforme Windows Azure&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Aujourd'hui, nous avons droit &amp;agrave; des am&amp;eacute;liorations pour Windows Azure Mobile Services. Au menu :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Le support de iOS. A partir d'une nouvelle application iOS ou d'une existante, connectez-la &amp;agrave; vos services h&amp;eacute;berg&amp;eacute;s sur Azure Mobile en quelques clics.&lt;/li&gt;
&lt;li&gt;Le support de l'identification Microsoft LiveId (ca existait d&amp;eacute;j&amp;agrave;) mais aussi Facebook, Twitter et Google (et un utilisateur de votre appli peut se connecter &amp;agrave; plusieurs de ces services &amp;agrave; la fois),&lt;/li&gt;
&lt;li&gt;Votre Mobile Service peut maintenant utiliser vos Windows Azure Blobs, Tables et ServiceBus,&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En parall&amp;egrave;le, et en collaboration avec des soci&amp;eacute;t&amp;eacute;s tierces, vous pouvez &amp;eacute;galement envoyer des emails via votre Mobile Service (en partenariat avec &lt;a href="http://sendgrid.com/blog/sendgrid-in-the-cloud-with-microsoft/"&gt;SendGrid&lt;/a&gt;) et des SMS (avec &lt;a href="http://www.twilio.com/azure"&gt;Twilio&lt;/a&gt;). Bien entendu, les services de SendGrid et Twilio sont limit&amp;eacute;s mais cela vous permet de vous faire une id&amp;eacute;e.&lt;/p&gt;</description><pubDate>Wed, 17 Oct 2012 05:42:41 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/ameliorations-des-services-de-windows-azure-mobile-services</guid></item><item><title>Une journée d'information sur Windows Azure au campus de Microsoft France</title><link>http://www.c2i.fr:80/actualites/une-journee-windows-azure</link><description>&lt;p&gt;&lt;img style="float: left; margin: 0px 10px 10px 0px;" alt="" src="/Media/Default/BlogPost/actualites/2012-10/nl_WindowsAzure_20121010_azurelogo.png" width="114" height="102" /&gt;Microsoft France organise le 28 Novembre 2012 une journ&amp;eacute;e d'information sur toutes les nouveaut&amp;eacute;s de Windows Azure.&lt;/p&gt;
&lt;p&gt;Je reprends le communiqu&amp;eacute; de presse :&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Lors de cette journ&amp;eacute;e, vous pourrez :&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;bull; Vous former avec des sessions d&amp;eacute;di&amp;eacute;es par services&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&amp;nbsp;&amp;bull; Echanger avec les chefs de produits Windows Azure et nos experts techniques&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&amp;nbsp;&amp;bull; Tenter de gagner des Nokia Lumia et des Xbox&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&amp;nbsp;&amp;bull; Profiter d&amp;rsquo;une bonne ambiance avec pizzas et goodies au rendez-vous !&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;De 8h45 &amp;agrave; 17h45 (bizarre comme horaires), vous pourrez donc vous informer, former gratuitement sur Azure. Comme il y a pas mal de nouveaut&amp;eacute;s ces derniers temps, c'est une bonne occasion pour se mettre &amp;agrave; niveau (si vous &amp;ecirc;tes parisien bien entendu ce jour l&amp;agrave;).&lt;/p&gt;
&lt;p&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032531092&amp;amp;Culture=fr-FR&amp;amp;community=0"&gt;Les inscriptions se font ici.&lt;/a&gt;&amp;nbsp;Vous y trouverez &amp;eacute;galement de d&amp;eacute;tail de la journ&amp;eacute;e.&lt;/p&gt;</description><pubDate>Fri, 12 Oct 2012 08:05:09 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/une-journee-windows-azure</guid></item><item><title>L'équipe d'Azure se renforce (encore plus...)</title><link>http://www.c2i.fr:80/actualites/l-equipe-d-azure-se-renforce-encore-plus</link><description>&lt;p&gt;&lt;img width="300" height="300" style="padding: 10px; float: right;" alt="" src="/Media/Default/BlogPost/actualites/azure.png" /&gt;&lt;/p&gt;
&lt;p&gt;Bien que l'on parle beaucoup de Windows 8 en ce moment (et pour cause), Microsoft est loin, mais tr&amp;egrave;s loin d'avoir oubli&amp;eacute; Windows Azure qui reste un point (si ce n'est LE POINT) strat&amp;eacute;gique de la soci&amp;eacute;t&amp;eacute;.&lt;/p&gt;
&lt;p&gt;On pouvait reprocher aux premi&amp;egrave;res versions un caract&amp;egrave;re confu, non mal&amp;eacute;able, difficile &amp;agrave; mettre en production, etc. Ils l'ont bien compris et la venue il y a un an et 1/2&amp;nbsp;de Scott Guthrie n'&amp;eacute;tait pas un hasard. Ses travaux commencent &amp;agrave; porter ses fruits avec une meilleure int&amp;eacute;gration d'Azure dans visual Studio, la venue de Windows Azure Mobile, et d'autres annonces qu'il a faites pas plus tard &lt;a href="http://weblogs.asp.net/scottgu/archive/2012/09/17/announcing-great-improvements-to-windows-azure-web-sites.aspx"&gt;qu'hier soir&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;L'&amp;eacute;quipe d'Azure se renforce encore donc avec la venue du Lead Manager de Visual Studio himself, Jason Bourne, non pardon, Jason Zander. Cette annonce d&amp;eacute;voil&amp;eacute;e par &lt;a href="http://www.zdnet.com/another-microsoft-developer-division-leader-moves-to-windows-azure-7000004390/"&gt;Mary Jo Foley&lt;/a&gt; intervient juste apr&amp;egrave;s le lancement officiel de VS 2012. Il a fait son job, il passe &amp;agrave; autre chose.&lt;/p&gt;
&lt;p&gt;On verra ce que cela donne dans les prochains mois (fin 2013) mais une chose est sur : Microsoft voit toujours son avenir passer par Windows Azure.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Tue, 18 Sep 2012 06:12:54 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/l-equipe-d-azure-se-renforce-encore-plus</guid></item><item><title>Windows Azure Mobile Services</title><link>http://www.c2i.fr:80/actualites/windows-azure-mobile-services</link><description>&lt;p&gt;Microsoft, sous l'influence de Scott Guthrie, vient de sortir Windows Azure Mobile Services.&lt;/p&gt;
&lt;p&gt;Bien qu'il y ai le terme Mobile inside, il sagit ni plus ni moins d'un syst&amp;egrave;me qui permet de cr&amp;eacute;er en quelques&amp;nbsp;clics un service HTTP REST h&amp;eacute;berg&amp;eacute;&amp;nbsp;sous Windows Azure (donc un Host) qui se connecter &amp;agrave; des donn&amp;eacute;es h&amp;eacute;berg&amp;eacute;es par un serveur SQL Azure.&lt;/p&gt;
&lt;p&gt;Vous n'avez donc plus &amp;agrave; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;d&amp;eacute;velopper un service HTTP REST en C# avec les Web Api,&lt;/li&gt;
&lt;li&gt;cr&amp;eacute;er&amp;nbsp;le package,&lt;/li&gt;
&lt;li&gt;cr&amp;eacute;er un hosting,&lt;/li&gt;
&lt;li&gt;uploader votre packagesur le hosting,&lt;/li&gt;
&lt;li&gt;cr&amp;eacute;er une base SQL Azure,&lt;/li&gt;
&lt;li&gt;g&amp;eacute;rer les autorisations entre votre hosting et SQL Azure,&lt;/li&gt;
&lt;li&gt;etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Juste :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Create a Mobile Service&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That's it!&lt;/p&gt;
&lt;p&gt;Cette courte vid&amp;eacute;o de Scott vous montre la facilit&amp;eacute;&amp;nbsp; d&amp;eacute;ploiement :&lt;/p&gt;
&lt;p&gt;&lt;iframe width="640" height="360" src="http://www.youtube.com/embed/ovDtALgsBuQ" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=257545&amp;amp;clcid=0x409"&gt;T&amp;eacute;l&amp;eacute;charger le Mobile SDK&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/mobile/tutorials/get-started/"&gt;Le tutoriel de cette vid&amp;eacute;o&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Thu, 30 Aug 2012 08:54:11 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/windows-azure-mobile-services</guid></item><item><title>Les nouveautés d'Azure de Juin 2012</title><link>http://www.c2i.fr:80/actualites/les-nouveautes-d-azure-de-juin-2012</link><description>&lt;p&gt;&lt;img width="150" height="150" style="padding: 10px; float: right;" alt="" src="/Media/Default/BlogPost/actualites/azure.png" /&gt;Scott Guthrie est &amp;agrave; la t&amp;ecirc;te de Windows Azure depuis quelques mois et c'est ce soir &amp;agrave; 22h, heure de Paris, qu'il pr&amp;eacute;sentera les nouveaut&amp;eacute;s de Juin 2012 &lt;a href="http://www.meetwindowsazure.com/"&gt;en direct de San Francisco&lt;/a&gt;. Cette conf&amp;eacute;rence sera d'ailleurs visible en streaming.&lt;/p&gt;
&lt;p&gt;Parmi les nouveaut&amp;eacute;s qu'il devrait annoncer, nous avons :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows Azure Virtual Machines avec la possibilit&amp;eacute; d'uploader et d'installer un VHD directement (Linux sous Azure ;-)),&lt;/li&gt;
&lt;li&gt;Windows Azure Virtual Network, ou comment cr&amp;eacute;er son propre VPN priv&amp;eacute; sous Azure,&lt;/li&gt;
&lt;li&gt;Windows Azure Web Sites, avec le support de Git, FTP,&lt;/li&gt;
&lt;li&gt;Nouveau SDK, pour une int&amp;eacute;gration et une utilisation encore plus simple depuis Visual Studio,&lt;/li&gt;
&lt;li&gt;Disponibilit&amp;eacute; dans de nouveaux pays comme la Russie, Cor&amp;eacute;e du Sud, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour en savoir plus, &lt;a href="http://www.meetwindowsazure.com/"&gt;rendez-vous donc ce soir sur le live streaming&lt;/a&gt; et en attendant, lisez &lt;a href="http://blogs.msdn.com/b/windowsazurefrance/archive/2012/06/07/annonce-nouveaux-services-windows-azure-disponibles.aspx"&gt;le billet de l'&amp;eacute;quipe d'Azure France&lt;/a&gt;&amp;nbsp;ou &lt;a href="http://blog.appfog.com/appfog-announces-azure-support/"&gt;l'annonce de AppFog&lt;/a&gt; (pour facilement d&amp;eacute;ployer WordPress, Drupal, etc. sur Azure).&lt;/p&gt;
&lt;p&gt;&lt;img width="600" height="462" alt="" src="http://blog.appfog.com/wp-content/uploads/2012/06/azure1.png" /&gt;&lt;br /&gt;&lt;em&gt;Le support d'Azure par AppFog&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mise &amp;agrave; jour 08 Juin : &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Scott Guthrie a donc fait sa conf&amp;eacute;rence hier soir et il r&amp;eacute;sume parfaitement (comme d'habitude) dans son blog &lt;a href="http://weblogs.asp.net/scottgu/archive/2012/06/07/meet-the-new-windows-azure.aspx"&gt;le r&amp;eacute;sum&amp;eacute; de toutes les nouveaut&amp;eacute;s d'Azure&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Le portail (et le site web) a &amp;eacute;t&amp;eacute; enti&amp;egrave;rement refondu avec un look Metro qui montre que l'on peur utiliser Metro pour faire des applis professionnelles complexes. J'avoue avoir h&amp;acirc;te de pouvoir le tester...&lt;/p&gt;
&lt;p&gt;&lt;img width="640" height="374" alt="" src="http://weblogs.asp.net/blogs/scottgu/image_3938DEB3.png" /&gt;&lt;/p&gt;
&lt;p&gt;Le portail du site web consacr&amp;eacute;&amp;nbsp;&amp;agrave; Azure&amp;nbsp;&amp;eacute;galement a &amp;eacute;t&amp;eacute; refait : &lt;a href="http://www.windowsazure.com/fr-fr/develop/net/"&gt;http://www.windowsazure.com/fr-fr/develop/net/&lt;/a&gt;&lt;/p&gt;</description><pubDate>Fri, 08 Jun 2012 06:37:21 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/les-nouveautes-d-azure-de-juin-2012</guid></item><item><title>Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris</title><link>http://www.c2i.fr:80/actualites/reservez-des-maintenant-votre-journee-du-20-juin-pour-le-windows-azure-dev-camp-2012-a-paris</link><description>&lt;p&gt;Je me fais le relais ici d'une annonce de Microsoft &amp;agrave; propos d'Azure (ils en ont besoin ;-)) :&lt;/p&gt;
&lt;p&gt;Microsoft organise le 20 Juin prochain un Dev Camp &amp;agrave; Issy les Moulineaux sur la plateforme Azure. Au menu :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pr&amp;eacute;sentations et d&amp;eacute;mos exclusives des nouveaut&amp;eacute;s de la plateforme&lt;/li&gt;
&lt;li&gt;&amp;Eacute;changes avec des membres de l'&amp;eacute;quipe de d&amp;eacute;veloppement Windows Azure sp&amp;eacute;cialement venus de Seattle&lt;/li&gt;
&lt;li&gt;Des contests avec des Nokia Lumia 800 et plein d'autres prix &amp;agrave; gagner&lt;/li&gt;
&lt;li&gt;Sans oublier des pizzas, des goodies et des offres sympas de nos partenaires !&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032513192&amp;amp;Culture=fr-FR"&gt;Incriptions ici&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/thomasconte/archive/2012/05/14/r-233-servez-d-232-s-maintenant-votre-journ-233-e-du-20-juin-pour-le-windows-azure-dev-camp-2012-224-paris.aspx"&gt;Vu sur le blog de Thomas Cont&amp;eacute;.&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 14 May 2012 20:24:17 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/reservez-des-maintenant-votre-journee-du-20-juin-pour-le-windows-azure-dev-camp-2012-a-paris</guid></item><item><title>Coach Toolkit Azure pour Windows Phone, iOS et Android</title><link>http://www.c2i.fr:80/actualites/coach-toolkit-azure-pour-windows-phone-ios-et-android</link><description>&lt;p&gt;&lt;img src="http://i.msdn.microsoft.com/hh771599.na-coach-azure-toolkit.png(fr-fr,MSDN.10).png" alt="" width="600" height="618" /&gt;&lt;/p&gt;
&lt;p&gt;Ce coach vous permettra de prendre en main le toolkit Azure pour Windows Phone, iOS et Android qui permet de construire tr&amp;egrave;s simplement un backend d&amp;rsquo;application mobile dans Azure, avec syst&amp;egrave;me d&amp;rsquo;authentification, de notifications, stockage, et tout ce dont une application mobile pourrait avoir besoin dans le cloud !&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/fr-fr/windowsphone/coach-toolkit-azure-mobile"&gt;http://msdn.microsoft.com/fr-fr/windowsphone/coach-toolkit-azure-mobile&lt;/a&gt;&lt;/p&gt;</description><pubDate>Thu, 03 May 2012 08:11:14 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/coach-toolkit-azure-pour-windows-phone-ios-et-android</guid></item><item><title>L'entité qui gère Windows Azure se dévoile</title><link>http://www.c2i.fr:80/actualites/l-entite-qui-gere-windows-azure-se-devoile</link><description>&lt;p&gt;&lt;img src="/Media/Default/BlogPost/actualites/globalfoundationservices.jpg" alt="" style="padding: 10px; float: right;" width="420" height="360" /&gt;Microsoft Azure et d'autres services de Microsoft :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bing,&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Hotmail,&amp;nbsp;&lt;/li&gt;
&lt;li&gt;MSN,&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Office 365,&lt;/li&gt;
&lt;li&gt;Xbox Live,&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;sont g&amp;eacute;r&amp;eacute;es par une entit&amp;eacute; nomm&amp;eacute;e Global Foundation Services qui&amp;nbsp;vient d'ouvrir un nouveau site :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.globalfoundationservices.com"&gt;http://www.globalfoundationservices.com&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Si vous n'avez pas eu la chance de vous rendre dans l'un des data centers d'Azure, c'est l'occasion de voir enfin des photos de l'int&amp;eacute;rieur, voir m&amp;ecirc;me des vid&amp;eacute;os (bizarre d'ailleurs, elles sont pas en streaming).&lt;/p&gt;
&lt;p&gt;Bref, ca va pas r&amp;eacute;volutionner votre vie de d&amp;eacute;veloppeurs, mais c'est toujours instructif.&lt;/p&gt;</description><pubDate>Thu, 19 Apr 2012 07:27:21 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/l-entite-qui-gere-windows-azure-se-devoile</guid></item><item><title>Faites attention au vrai coût de Microsoft Azure</title><link>http://www.c2i.fr:80/actualites/faites-attention-au-vrai-cout-de-microsoft-azure</link><description>&lt;p&gt;Si vous lisez mes publications, remarques &amp;amp; co, vous aurez certainement remarqu&amp;eacute; que j'averti depuis de nombreux mois de faire attention aux co&amp;ucirc;ts de Windows Azure.&lt;/p&gt;
&lt;p&gt;Attention, je ne dis pas que c'est cher, hors de prix, monstrueusement d&amp;eacute;m&amp;eacute;sur&amp;eacute;, etc. Non, au contraire, &lt;strong&gt;Windows Azure est tr&amp;egrave;s (TRES) int&amp;eacute;ressant&lt;/strong&gt; aussi bien au niveau technique que financier.&lt;/p&gt;
&lt;p&gt;Mais quand vous avez un projet Windows Azure, calculer son co&amp;ucirc;t peut &amp;ecirc;tre un vrai cauchemar. Pourquoi ? tout simplement car les co&amp;ucirc;ts d'abonnement, d'h&amp;eacute;bergement &amp;amp; co ne sont que peanuts en comparaison du poste qui sera le plus important : la consommation de la bande passante.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://timheuer.com/blog/archive/2012/04/09/sql-azure-data-transfer-billing-fees.aspx"&gt;Tim Heuer, pourtant employ&amp;eacute; Microsoft, vient d'en faire l'exp&amp;eacute;rience ;-)&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 10 Apr 2012 06:57:07 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/faites-attention-au-vrai-cout-de-microsoft-azure</guid></item><item><title>Comment utiliser le Cache d'Azure</title><link>http://www.c2i.fr:80/actualites/comment-utiliser-le-cache-d-azure</link><description>&lt;p&gt;Le cache traditionnel d'ASP .NET ne peut effectuer de monter en charge sur de multiples serveurs d'une ferme. Avec les objets Session, on peut imaginer de les s&amp;eacute;rialiser dans un serveur SQL partag&amp;eacute;, mais ce n'est pas possible avec la cache.&lt;/p&gt;
&lt;p&gt;Heureusement, Azure propose une solution toute faite, le Cache d'Azure. Bien entendu, ce dernier est payant mais le jeu en vaut la chandelle.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blog.structuretoobig.com/post/2012/04/04/Getting-Started-with-the-Windows-Azure-Cache.aspx"&gt;Cet article de Brian Hitney&lt;/a&gt; (Evang&amp;eacute;liste chez Microsoft) vous montre comment proc&amp;eacute;der.&lt;/p&gt;</description><pubDate>Wed, 04 Apr 2012 14:50:49 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/comment-utiliser-le-cache-d-azure</guid></item><item><title>Formation technique gratuite sur SQL Azure</title><link>http://www.c2i.fr:80/actualites/formation-technique-gratuite-sur-sql-azure</link><description>&lt;p&gt;&lt;img src="/Media/Default/BlogPost/actualites/windows-azure-20091020-020856.jpg" alt="" width="277" height="190" /&gt;&lt;/p&gt;
&lt;p&gt;Microsoft organise les 15 et 16 Mars prochain une formation sur 2 jours gratuite &amp;agrave; Windows Azure.&lt;/p&gt;
&lt;p&gt;&amp;bull; Jour 1 :&lt;/p&gt;
&lt;p&gt;Azure Compute, Azure Storage, Azure AppFabric, Conseil de migration ASP.NET&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;bull; Jour 2 :&lt;/p&gt;
&lt;p&gt;- Pr&amp;eacute;sentation de SQL Azure&lt;/p&gt;
&lt;p&gt;- SQL Azure DataSync&lt;/p&gt;
&lt;p&gt;- SQL Azure reporting Services&lt;/p&gt;
&lt;p&gt;- SQL Azure avanc&amp;eacute; (Federation, &amp;hellip;)&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/windowsazurefrance/archive/2012/03/09/formation-technique-gratuite-sur-sql-azure.aspx"&gt;Renseignements ici.&lt;/a&gt;&lt;/p&gt;</description><pubDate>Fri, 09 Mar 2012 17:04:04 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/formation-technique-gratuite-sur-sql-azure</guid></item><item><title>Diminution des coûts de Windows Azure Storage et Compute</title><link>http://www.c2i.fr:80/actualites/diminution-des-couts-de-windows-azure-storage-et-compute</link><description>&lt;p&gt;&lt;img alt="" src="/Media/Default/BlogPost/actualites/windows-azure-20091020-020856.jpg" width="277" height="190" /&gt;&lt;/p&gt;
&lt;p&gt;Apr&amp;egrave;s Windows SQL azure, c'est maintenant le tour du compute et du storage de voir leurs coputs diminuer.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows Azure Storage passe de $0.14 &amp;agrave; $0.125 (-12%)&lt;/li&gt;
&lt;li&gt;Windows Azure Extra Small Compute passe de $0.04 &amp;agrave; $0.02 (-50%)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Donc, par exemple,&amp;nbsp;un site web sur une Extra Small Instance ne coutera plus que $15/mois contre $30 avant (si vous voulez une disponibilit&amp;eacute; &amp;agrave; 99.5%, faudra multiplier par 2 ;-))&lt;/p&gt;
&lt;p&gt;Vous pouvez faire une estimation de prix gr&amp;acirc;ce &amp;agrave; &lt;a href="https://www.windowsazure.com/fr-fr/pricing/calculator/?WT.mc_id=cmp_pst001_blg_post0068cal"&gt;la calculatrice mise en place par MS&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;La page avec &lt;a href="https://www.windowsazure.com/fr-fr/pricing/details/?WT.mc_id=cmp_pst001_blg_post0068pri"&gt;tous les prix de Windows Azure&lt;/a&gt;&amp;nbsp;(notez que contrairement &amp;agrave; Apple, Microsoft applique le bon taux de conversion entre le dollar et l'euro!).&lt;/p&gt;
&lt;p&gt;NB: il existe &amp;eacute;galement une offre de 6 mois pour le stockage avec des co&amp;ucirc;ts tr&amp;egrave;s int&amp;eacute;ressant. Par exemple, moins de 80&amp;euro; le Tera octet (pour une capacit&amp;eacute; de 1 &amp;agrave; 50To) ou 60&amp;euro; le To (pour une capacit&amp;eacute; de 1000 &amp;agrave; 5000 To, ca en fait des films ca !!!).&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Fri, 09 Mar 2012 10:27:16 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/diminution-des-couts-de-windows-azure-storage-et-compute</guid></item><item><title>Le bulletin Azure Episode 5</title><link>http://www.c2i.fr:80/actualites/le-bulletin-azure-episode-5</link><description>&lt;p&gt;Un &amp;eacute;pisode d'une demi-heure avec Benjamin et Pierre (bravo pour&amp;nbsp;avoir fait&amp;nbsp;l'ouverture sur la panne d'Azure du 29 F&amp;eacute;vrier dernier. Cela montre la clart&amp;eacute;, que MS ne fait pas son cachotier - contrairement &amp;agrave; d'autres...)&lt;/p&gt;
&lt;p&gt;&lt;iframe style="height: 288px; width: 512px;" src="http://channel9.msdn.com/posts/LeBulletinAzure05/player?w=512&amp;amp;h=288" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/windowsazurefrance/archive/2011/12/20/le-bulletin-azure-les-233-pisodes.aspx"&gt;Tous les &amp;eacute;pisodes du bulletin.&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 05 Mar 2012 07:44:49 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/le-bulletin-azure-episode-5</guid></item><item><title>Panne de Windows Azure</title><link>http://www.c2i.fr:80/actualites/panne-de-windows-azure</link><description>&lt;p&gt;&lt;img src="http://www.c2idotnet.com/Media/Default/BlogPost/actualites/windows-azure-20091020-020856.jpg" alt="" width="277" height="190" style="border-style: initial; border-color: initial;" /&gt;&lt;/p&gt;
&lt;p&gt;Windows Azure a eu &lt;a href="http://www.zdnet.com/blog/microsoft/microsofts-windows-azure-has-a-meltdown/12076"&gt;une panne majeure aujourd'hui&lt;/a&gt;. Il semblerait que les probl&amp;egrave;mes se r&amp;eacute;solvent petit &amp;agrave; petit, mais c'est tout de m&amp;ecirc;me un fait majeur tr&amp;egrave;s ennuyant pour Microsoft (en plus, le jour du lancement de Windows 8 Consumer Preview).&lt;/p&gt;
&lt;p&gt;[Mise &amp;agrave; jour 01/03]&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/windowsazure/archive/2012/03/01/windows-azure-service-disruption-update.aspx"&gt;On a eu confirmation&lt;/a&gt; que le bogue concernant Azure est bien du au fait que 2012 soit une ann&amp;eacute;e bisextille ;-)&lt;/p&gt;
&lt;p&gt;D&amp;eacute;cid&amp;eacute;ment, apr&amp;egrave;s Apple, c'est au tour de Microsoft de ne pas supporter les sp&amp;eacute;cificit&amp;eacute;s de nos calendriers. Mais pourquoi la terre ne tourne pas autour du soleil en un nombre entier de jour ?!!!&lt;/p&gt;
&lt;p&gt;[Mise &amp;agrave; jour 14/03]&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.lemondeducloud.fr/lire-panne-du-cloud-azure-microsoft-va-dedommager-ses-clients-48150.html?utm_source=mail&amp;amp;utm_medium=email&amp;amp;utm_campaign=Newsletter"&gt;Microsoft va d&amp;eacute;dommager ses clients suite &amp;agrave; cette panne.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description><pubDate>Wed, 14 Mar 2012 10:34:55 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/panne-de-windows-azure</guid></item><item><title>Une conférence web sur l'authentification fédérée (Facebook, Google, LiveId) in french</title><link>http://www.c2i.fr:80/actualites/une-conference-web-sur-l-authentification-federee-facebook-google-liveid-in-french</link><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/stephe/archive/2012/02/21/e-camp-proposez-une-authentification-f-233-d-233-r-233-e-fb-google-liveid-avec-acs-dans-votre-application-windows-phone.aspx"&gt;St&amp;eacute;phanie Hertrich&lt;/a&gt; de Microsoft France propose ce vendredi 24 f&amp;eacute;vrier &amp;agrave; 13h30 une conf&amp;eacute;rence live meeting sur comment impl&amp;eacute;menter dans une appli Windows Phone l'authentification f&amp;eacute;d&amp;eacute;r&amp;eacute;e (ACS).&lt;/p&gt;
&lt;p&gt;Pour m&amp;eacute;moire, ACS permet de d&amp;eacute;l&amp;eacute;guer &amp;agrave; un service Azure l'authentification dans vos applications (Web, WP7, Windows, etc.).&lt;/p&gt;
&lt;p&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032504965&amp;amp;culture=fr-FR"&gt;Inscriptions ici.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description><pubDate>Wed, 22 Feb 2012 07:32:38 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/une-conference-web-sur-l-authentification-federee-facebook-google-liveid-in-french</guid></item><item><title>Les API REST d'Azure avec ASP .NET Web API</title><link>http://www.c2i.fr:80/articles/les-api-rest-d-azure-avec-asp-.net-web-api</link><description>&lt;p&gt;Avec ASP .NET MVC 4.0, nous avons la joie et l'avantage de découvrir en avant première mondiale des nouvelles API pour les appels Http : ASP .NET Web API.&lt;/p&gt; &lt;p&gt;Ces apis seront d'ailleurs intégrées directement dans le Framework 4.5, donc on peut passer du temps dessus pour s'amuser un peu.&lt;/p&gt; &lt;p&gt;Suite à mes précédents articles (&lt;a href="http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-1ere-etape-le-certificat" target="_blank"&gt;1&lt;/a&gt; et &lt;a href="http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage" target="_blank"&gt;2&lt;/a&gt;) sur l'appel des API REST de Windows Azure, j'ai donc décidé de ré implémenter mon code en utilisant les Web API.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.asp.net/web-api"&gt;Vous pouvez télécharger les Web Api avec ASP .NET MVC 4 ici&lt;/a&gt;.&lt;/p&gt; &lt;h1&gt;System.Net.Http&lt;/h1&gt; &lt;p&gt;Donc dans mon projet, j'ai ajouté une référence vers l'assembly System.Net.Http (remarquez le nom en System.xxx prouvant que c'est bien une assembly majeure qui sera intégrée dans .NET 4.5).&lt;/p&gt; &lt;p&gt;Pour l'instant, vous trouverez cette assembly dans Program Files\Microsoft ASP.NET\ASP.NET MVC 4\Assemblies.&lt;/p&gt; &lt;p&gt;Dans cette assembly, vous trouverez la classe principale qui est HttpClient.&lt;/p&gt; &lt;p&gt;Quand vous voulez effectuer une appel Http, vous utiliserez cette classe avec sa méthode SendAsync qui attend un HttpRequestMessage et retourne un HttpResponseMessage. Il existe également les méthodes GetAsync, PostAsync, PutAsync qui appellent en interne la méthode sendAsync en spécifiant le type d'appel (méthode GET, POST ou PUT). Si vous l'utilisez telle quelle, elle utilisera en interne un HttpClientHandler qui se chargera de traiter le message de requête et vous renverra la réponse.&lt;/p&gt; &lt;p&gt;Si vous voulez comprendre les bases de HttpClient, je vous laisse lire &lt;a href="http://blogs.msdn.com/b/henrikn/archive/2012/02/16/httpclient-is-here.aspx"&gt;le billet de Henrik F Nielsen&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Mais le principe et la flexibilité de HttpClient, c'est que vous pouvez ajouter autant de HttpClientHandler que vous voulez qui traiteront l'un après l'autre la requête et la réponse. Vous pouvez donc créer une pile de handler qui pourront modifier la requête et/ou modifier la réponse.&lt;/p&gt; &lt;p&gt;Dans notre cas de l'appel des API REST d'Azure, on sait que l'on doit systématiquement envoyer la version de l'api que l'on souhaite utiliser (x-ms-version) dans l'en-tête du message. Plutôt que de l'ajouter dans tous nos appels, il nous suffira de créer un HttpClientHandler qui ajoutera cette version une bonne fois pour toute.&lt;/p&gt; &lt;h1&gt;Galère, galère&lt;/h1&gt; &lt;p&gt;Il en est de même pour le certificat X509 que l'on doit ajouter également systématiquement et je vous avouerais franchement que j'ai un peu galéré au début de cela. Mon principal soucis provenait que je ne savais pas comment ajouter mon certificat X509 à mon message HttpRequestMessage.&lt;/p&gt; &lt;p&gt;Pour explorer toute nouvelle assembly, j'utilise bien entendu Reflector (et/ou &lt;a href="http://www.telerik.com/products/decompiler.aspx"&gt;Just Decompile&lt;/a&gt; de Telerik qui à l'avantage d'être gratuit et en pleine évolution en ce moment).&lt;/p&gt; &lt;p&gt;J'ai donc chargé System.Net.Http pour voir comment ajouter mon certificat X509 dans le message. Mais en faisant le tour complet, je ne trouvais pas de solution. Je voyais bien que la requête Http était créée dans la méthode CreateAndPrepareWebRequest du HttpClientHandler mais cette méthode est private.&lt;/p&gt; &lt;p&gt;Je voyais bien également que la méthode InitializeWebRequest était appelée, mais cette méthode bien qu'étant redéfinissable était marquée private : moralité, je ne pouvais créer une classe dérivant de HttpClientHandler pour redéfinir InitializeWebRequest et pouvoir accéder enfin à l'objet HttpWebRequest pour pouvoir lui ajouter mon certificat X509. De plus je ne voyais aucunes classes dans System.Net.Http qui héritait de HttpClientHandler et qui me permettait de faire ce que je voulais.&lt;/p&gt; &lt;p&gt;Bref, j'étais dans une impasse.&lt;/p&gt; &lt;p&gt;Et puis miracle, en regardant toujours dans Reflector, je tombe sur les attributs de l'assembly et je vois :&lt;/p&gt; &lt;p&gt;&lt;strong&gt;[assembly: InternalsVisibleTo("System.Net.Http.WebRequest, PublicKey=xxx")]&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;InternalsVisibleTo permet à des classes d’une autre assembly d’être considérées comme faisant partie de l’assembly. Donc pour les classes dans System.Net.Http.WebRequest, InitializeWebRequest est redéfinissable.&lt;/p&gt; &lt;p&gt;Je charge donc l'assembly System.Net.Http.Webrequest qui ne contient qu'une seule classe : WebRequestHandler.&lt;/p&gt; &lt;p&gt;Et cette dernière fait exactement ce que je veux (elle est d'ailleurs prototypée pour cela) : Si vous voulez jouer avec les certificats, l'impersonnalisation, le CachePolicy, etc. elle est faite pour vous.&lt;/p&gt; &lt;p&gt;Alors pourquoi cette classe est dans une autre assembly, je n'en ai aucunes idées. Et utiliser InternalToVisibilityAttribute ressemble plutôt à du bricolage. Alors soit il y a une explication technique que je n'ai pas vu, soit cette classe a été ajoutée plus tard dans le processus de fabrication des Web API et qu'à terme, elle sera réintégrée, nous verrons bien...&lt;/p&gt; &lt;p&gt;Bref, après quelques heures passées à chercher de partout, j'avais enfin ma solution.&lt;/p&gt; &lt;h1&gt;AzureRestRequestHandler&lt;/h1&gt; &lt;p&gt;On peut donc enfin s'attaquer à la classe Handler d'appels aux API REST de Windows Azure. Elle hérite donc de WebRequestHandler.&lt;/p&gt; &lt;p&gt;Je lui ai ajouté trois propriétés :&lt;/p&gt; &lt;ul&gt; &lt;li&gt;CertificateThumbprint (string) : l'empreinte du certificat,  &lt;li&gt;XmsVersion (string) : la version de l'API que l'on souhaite utiliser, &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Je lui ajoute la méthode GetCertificate déjà définie dans un &lt;a href="http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-1ere-etape-le-certificat" target="_blank"&gt;précédent article&lt;/a&gt; :&lt;/p&gt;&lt;pre class="brush: csharp;"&gt;public class AzureRestRequestHandler : WebRequestHandler
{
    public const string XmsVersion_2009_10_01 = "2009-10-01";
    public const string XmsVersion_2010_04_01 = "2010-04-01";
    public const string XmsVersion_2010_10_28 = "2010-10-28";
    public const string XmsVersion_2011_02_25 = "2011-02-25";
    public const string XmsVersion_2011_06_01 = "2011-06-01";
    public const string XmsVersion_2011_08_01 = "2011-08-01";
    public const string XmsVersion_2011_10_01 = "2011-10-01";

    public AzureRestRequestHandler()
    {
        XmsVersion = XmsVersion_2011_10_01;
        ExpectedStatusCode = HttpStatusCode.OK;
    }

    public AzureRestRequestHandler(string certificateThumbprint) : this()
    {
        CertificateThumbprint = certificateThumbprint;
    }

    public string CertificateThumbprint { get; set; }

    public string XmsVersion { get; set; }

    private  X509Certificate2 GetCertificate()
    {
        var certificateStore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
        try
        {
            certificateStore.Open(OpenFlags.ReadOnly);
            var certs = certificateStore.Certificates.Find(
                X509FindType.FindByThumbprint,
                CertificateThumbprint,
                false);

            if (certs.Count != 1)
            {
                Console.WriteLine("Certificat introuvable (CurrentUser)");
                throw new InvalidOperationException("Certificat introuvable");
            }
            return certs[0];
        }
        finally
        {
            certificateStore.Close();
        }
    }

    protected override Task&amp;lt;HttpResponseMessage&amp;gt; SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        //TODO
    }
}

&lt;/pre&gt;
&lt;p&gt;Il ne reste plus qu’à implémenter la surcharge. Donc dans un premier temps on va ajouter le certificat et la version de l’API REST dans l’appel :&lt;/p&gt;&lt;pre class="brush: csharp;"&gt;public Task&amp;lt;List&amp;lt;StorageService&amp;gt;&amp;gt; GetStorageAccountInternal(string subscriptionId)
{
    var client = new HttpClient(new AzureRestRequestHandler(CertificateThumbprint));
    var requestUrl = string.Format(
        "https://management.core.windows.net/{0}/services/storageservices",
        subscriptionId);

    var tcs = new TaskCompletionSource&amp;lt;List&amp;lt;StorageService&amp;gt;&amp;gt;();

    client.GetAsync(requestUrl)
        .ContinueWith(
            task =&amp;gt;
                {
                    // une erreur dans l'exécution de la requête ?
                    if (task.IsFaulted)
                    {
                        tcs.TrySetException(task.Exception.GetBaseException());
                        return;
                    }

                    try
                    {
                        // j'ai une bonne réponse ?
                        task.Result.EnsureSuccessStatusCode();
                    }
                    catch (HttpRequestException exception)
                    {
                        tcs.TrySetException(exception);
                        return;
                    }

                    // réponse OK : on analyse le contenu (dans le même thread)
                    task.Result.Content.ReadAsStringAsync().ContinueWith(
                        continuationTask =&amp;gt;
                            {
                                // on a du mal à lire le flux http
                                if (continuationTask.IsFaulted)
                                {
                                    tcs.TrySetException(task.Exception.GetBaseException());
                                    return;
                                }

                                // ReadStorageAccountResponse converti le xml en List&amp;lt;StorageService&amp;gt;
                                tcs.SetResult(ReadStorageAccountResponse(continuationTask.Result));
                            },
                        TaskContinuationOptions.ExecuteSynchronously);
                });

    return tcs.Task;
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;On se concentre sur la lecture du xml et plus sur comment appeler, etc. Bref, c’est mieux (enfin je trouve &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-winkingsmile" alt="Clignement d'&amp;oelig;il" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Les-API-REST-dAzure-avec-ASP.NET-Web-API_C44E/wlEmoticon-winkingsmile_2.png"&gt;)&lt;/p&gt;</description><pubDate>Mon, 20 Feb 2012 13:28:16 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/articles/les-api-rest-d-azure-avec-asp-.net-web-api</guid></item><item><title>Présentation des API REST de Windows Azure : Lister les comptes de storage</title><link>http://www.c2i.fr:80/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage</link><description>&lt;p&gt;Maintenant que nous savons &lt;a href="http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-1ere-etape-le-certificat" target="_blank"&gt;comment cr&amp;eacute;er un certification de gestion&lt;/a&gt; et l&amp;rsquo;installer sur notre compte Windows Azure, nous allons l&amp;rsquo;utiliser pour lister les comptes de storage.&lt;/p&gt;
&lt;p&gt;Comme nous le montre &lt;a href="http://msdn.microsoft.com/fr-fr/library/ee460787.aspx" target="_blank"&gt;la documentation&lt;/a&gt;, il suffit d&amp;rsquo;envoyer une requ&amp;ecirc;te de type GET &amp;agrave; une url bien pr&amp;eacute;cise :&lt;/p&gt;
&lt;p&gt;https://management.core.windows.net/&amp;lt;subscription-id&amp;gt;/services/storageservices&lt;/p&gt;
&lt;p&gt;Je vous rappelle que votre subscription-id se retrouve dans votre console d&amp;rsquo;administration Azure. C&amp;rsquo;est l&amp;rsquo;ID de votre abonnement :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_D15C/azure7.jpg"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="azure7" border="0" alt="azure7" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_D15C/azure7_thumb.jpg" width="966" height="583" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cette documentation nous montre que le r&amp;eacute;sultat sera au format Xml qui listera les comptes avec leurs noms et leurs adresses. Nous allons donc cr&amp;eacute;er une classe pour repr&amp;eacute;senter ces donn&amp;eacute;es :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;public class StorageService
{
    public string Url { get; set; }
    public string ServiceName { get; set; }
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Puis une m&amp;eacute;thode qui effectuera l&amp;rsquo;appel :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;public List&amp;lt;StorageService&amp;gt; StorageAccounts(string subscriptionId)
{
    var requestUrl = string.Format(
        "https://management.core.windows.net/{0}/services/storageservices",
        subscriptionId);


    WebResponse resp = null;
    try
    {
        // Code. cf plus bas dans l'article

    }
    catch (Exception ex)
    {
        Console.WriteLine("ERREUR : {0}", ex);
        throw;
    }
    finally
    {
        if (resp != null)
            resp.Close();
    }
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Rien de bien compliqu&amp;eacute; pour l&amp;rsquo;instant.&lt;/p&gt;
&lt;p&gt;Il faut donc constituer notre appel. Celui-ci contient un Header et un Body et un certificat. Dans notre cas, il n&amp;rsquo;y aura rien dans le Body, et dans le Header, il y aura juste le num&amp;eacute;ro de version de l&amp;rsquo;API REST (x-ms-version) :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;var request = (HttpWebRequest) WebRequest.Create(requestUrl);
request.Method = "GET";
request.ContentType = "application/xml";
// le header
var requestHeaders = new NameValueCollection {{"x-ms-version", "2009-10-01"}};
request.Headers.Add(requestHeaders);
// le certificat
request.ClientCertificates.Add(GetCertificate());
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;On est pr&amp;ecirc;t &amp;agrave; envoyer la sauce :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;// envoi de la requ&amp;ecirc;te
resp = request.GetResponse();
var httpResp = (HttpWebResponse) resp;
// lecture du contenu (format Xml)
string content;
using (var reader = new StreamReader(httpResp.GetResponseStream()))
{
    content = reader.ReadToEnd();
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Dans content, on a donc le contenu au format Xml (si tout s&amp;rsquo;est bien pass&amp;eacute;, of course). La m&amp;eacute;thode ReadStorageAccountResponse va donc analyser ce contenu :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;private List&amp;lt;StorageService&amp;gt; ReadStorageAccountResponse(string content)
{
    var document = XDocument.Parse(content);
    XNamespace ns = "http://schemas.microsoft.com/windowsazure";

    return document.Element(ns + "StorageServices")
        .Elements(ns + "StorageService")
        .Select(root =&amp;gt; new StorageService
                            {
                                Url = root.Element(ns + "Url").Value,
                                ServiceName = root.Element(ns + "ServiceName").Value
                            }).ToList();
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Et voila, vous pouvez maintenant lister facilement vos comptes de storage :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;private const string CertificateThumbprint = "[VOTRE EMPREINTE DE CERTIFICAT]";

public List&amp;lt;StorageService&amp;gt; StorageAccounts(string subscriptionId)
{
    var requestUrl = string.Format(
        "https://management.core.windows.net/{0}/services/storageservices",
        subscriptionId);

    WebResponse resp = null;
    try
    {
        var request = (HttpWebRequest) WebRequest.Create(requestUrl);
        request.Method = "GET";
        request.ContentType = "application/xml";
        // le header
        var requestHeaders = new NameValueCollection {{"x-ms-version", "2009-10-01"}};
        request.Headers.Add(requestHeaders);
        // le certificat
        request.ClientCertificates.Add(GetCertificate());

        // envoi de la requ&amp;ecirc;te
        resp = request.GetResponse();
        var httpResp = (HttpWebResponse) resp;
        // lecture du contenu (format Xml)
        string content;
        using (var reader = new StreamReader(httpResp.GetResponseStream()))
        {
            content = reader.ReadToEnd();
        }
        return ReadStorageAccountResponse(content);

    }
    catch (Exception ex)
    {
        Console.WriteLine("ERREUR : {0}", ex);
        throw;
    }
    finally
    {
        if (resp != null)
            resp.Close();
    }
}

private List&amp;lt;StorageService&amp;gt; ReadStorageAccountResponse(string content)
{
    var document = XDocument.Parse(content);
    XNamespace ns = "http://schemas.microsoft.com/windowsazure";

    return document.Element(ns + "StorageServices")
        .Elements(ns + "StorageService")
        .Select(root =&amp;gt; new StorageService
                            {
                                Url = root.Element(ns + "Url").Value,
                                ServiceName = root.Element(ns + "ServiceName").Value
                            }).ToList();
}     

private static X509Certificate2 GetCertificate()
{
    var certificateStore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
    try
    {
        certificateStore.Open(OpenFlags.ReadOnly);
        var certs = certificateStore.Certificates.Find(
            X509FindType.FindByThumbprint,
            CertificateThumbprint,
            false);

        if (certs.Count != 1)
        {
            Console.WriteLine("Certificat introuvable (CurrentUser)");
            throw new InvalidOperationException("Certificat introuvable");
        }
        return certs[0];
    }
    finally
    {
        certificateStore.Close();
    }
}
&lt;/pre&gt;</description><pubDate>Thu, 16 Feb 2012 14:27:50 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage</guid></item><item><title>Présentation des API REST de Windows Azure : 1ère étape, le certificat</title><link>http://www.c2i.fr:80/articles/presentation-des-api-rest-de-windows-azure-1ere-etape-le-certificat</link><description>&lt;p&gt;D&amp;egrave;s le d&amp;eacute;marrage de Windows Azure, Microsoft a propos&amp;eacute; des API REST de management de la plateforme. Si vous &amp;ecirc;tes administrateur, l'id&amp;eacute;al pour g&amp;eacute;rer, automatiser vos comptes Azure, les commandlets de Powershell sont tr&amp;egrave;s bien faites.&lt;/p&gt;
&lt;p&gt;Mais parfois, elles ne vous suffiront pas et il vous faudra mettre les mains dans le cambouis pour satisfaire vos envies (qui doivent &amp;ecirc;tre tordues quand m&amp;ecirc;me pour ne pas &amp;ecirc;tre r&amp;eacute;solues par les Cmdlets ;-)).&lt;/p&gt;
&lt;p&gt;Le but de cette s&amp;eacute;rie d'article est de vous montrer comment faire. Il n'est pas question pour moi d'en faire le tour complet, tout simplement parce que je n'ai certainement pas tout vu et que ces API REST sont en constantes &amp;eacute;volutions tout comme les SDK de Windows Azure.&lt;/p&gt;
&lt;p&gt;J'en profite pour dire que c'est un retour d'exp&amp;eacute;rience d'une application que j'avais d&amp;eacute;velopp&amp;eacute; pour Microsoft France, c2iFreemium, qui permettait de tester Azure sans avoir de LiveId. L'application g&amp;eacute;rait un pool de projets Azure, d&amp;eacute;ployait pour vous les packages, effectuait le d&amp;eacute;marrage des services host&amp;eacute;s, cr&amp;eacute;ait les bases SQL Azure avec les autorisations, etc.&lt;/p&gt;
&lt;p&gt;Bref, en un simple clic, c2iFreemium g&amp;eacute;n&amp;eacute;rait tout un environnement Azure pour vous de fa&amp;ccedil;on transparente, et ce gr&amp;acirc;ce en partie aux API REST.&lt;/p&gt;
&lt;p&gt;NB: c2iFreemium est &amp;eacute;galement utilis&amp;eacute; par d'autres filiales de Microsoft, en Roumanie, Ukraine, Russie, Italie, Pologne, Danemark, R&amp;eacute;publique tch&amp;egrave;que, Slovaquie, Croatie, etc.&lt;/p&gt;
&lt;h1&gt;Le certificat&lt;/h1&gt;
&lt;p&gt;Pour toute discussion avec les API REST de management, il vous faut un certificat. Ce certificat devra &amp;ecirc;tre utilis&amp;eacute; pour toute interrogation et assure la s&amp;eacute;curit&amp;eacute; entre votre compte Azure et votre application.&lt;/p&gt;
&lt;h3&gt;Cr&amp;eacute;ation du certificat&lt;/h3&gt;
&lt;p&gt;Il faut donc cr&amp;eacute;er un certificat. ce dernier est au format X509. Il y a plusieurs fa&amp;ccedil;ons de cr&amp;eacute;er ce certificat (avec la console d'administration d'IIS, avec l'utilitaire makecert.exe), mais comme je suppose que vous &amp;ecirc;tes d&amp;eacute;veloppeur, on va le faire avec Visual Studio 2010 et &lt;a href="http://www.microsoft.com/downloads/fr-fr/details.aspx?familyid=e4635d95-61ce-415e-ae92-3004856c08e2&amp;amp;displaylang=fr"&gt;le SDK 1.6 de Windows Azure&lt;/a&gt; qui date du 8 Novembre 2011.&lt;/p&gt;
&lt;p&gt;NB : Pour &amp;ecirc;tre certain d'avoir le dernier SDK, rendez-vous plut&amp;ocirc;t &lt;a href="https://www.windowsazure.com/fr-fr/develop/downloads/"&gt;&amp;agrave; cette adresse de MS France&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure1.jpg"&gt;&lt;img style="background-image: none; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border: 0px;" title="azure1" border="0" alt="azure1" align="left" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure1_thumb.jpg" width="244" height="223" /&gt;&lt;/a&gt;Maintenant ouvrons Visual Studio et la fen&amp;ecirc;tre Server Explorer. Vous devriez voir dans l&amp;rsquo;arbre un n&amp;oelig;ud intitul&amp;eacute; Windows Azure Compute. Un petit clic droit dessus puis :&lt;/p&gt;
&lt;p&gt;Add deployment environment,&lt;/p&gt;
&lt;p&gt;Une fen&amp;ecirc;tre s&amp;rsquo;ouvre. Clic droit de nouveau sur Windows Azure Subscriptions puis :&lt;/p&gt;
&lt;p&gt;Manage,&lt;/p&gt;
&lt;p&gt;Une fen&amp;ecirc;tre s&amp;rsquo;ouvre intitul&amp;eacute;e Windows Azure Project Management Settings. Cliquez sur le bouton New. Une nouvelle fen&amp;ecirc;tre s&amp;rsquo;ouvre qui vous permet soit d&amp;rsquo;utiliser un certificat existant, soit d&amp;rsquo;en cr&amp;eacute;er un nouveau, ce que nous allons faire. Donc dans le combobox, le dernier de la liste devrait s&amp;rsquo;appeler Create. S&amp;eacute;lectionnez le et&amp;hellip; une nouvelle fen&amp;ecirc;tre apparait (youpi!) vous demandant un nom pour votre certificat.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure2.jpg"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="azure2" border="0" alt="azure2" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure2_thumb.jpg" width="627" height="723" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;C&amp;rsquo;est la 4&amp;egrave;me fen&amp;ecirc;tre modale qui apparait ! Vous comprenez maintenant pourquoi Windows s&amp;rsquo;appelle Windows &lt;img style="border-style: none;" class="wlEmoticon wlEmoticon-smilewithtongueout" alt="Tire la langue" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/wlEmoticon-smilewithtongueout_2.png" /&gt;&lt;/p&gt;
&lt;p&gt;Tapez donc le nom que vous voulez puis validez (je l&amp;rsquo;ai intitul&amp;eacute; &amp;ldquo;Mon certificat&amp;rdquo;, original non ?).&lt;/p&gt;
&lt;p&gt;Le SDK d&amp;rsquo;Azure cr&amp;eacute;e alors le certificat. C&amp;rsquo;est un certificat avec une cl&amp;eacute; publique et une cl&amp;eacute; priv&amp;eacute;e. C&amp;rsquo;est la cl&amp;eacute; publique que vous allez uploader dans votre compte Windows Azure.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ou est donc cette cl&amp;eacute; publique ?&lt;/strong&gt; C&amp;rsquo;est un fichier .cer.&lt;/p&gt;
&lt;p&gt;Dans la fen&amp;ecirc;tre &amp;ldquo;Windows Azure Project Management Authentification&amp;rdquo;, vous avez un lien vers ce fichier :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure3.jpg"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="azure3" border="0" alt="azure3" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure3_thumb.jpg" width="506" height="348" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Vous verrez qu&amp;rsquo;il est plac&amp;eacute; dans le dossier temporaire de Windows. Donc vous pouvez le r&amp;eacute;cup&amp;eacute;rer facilement.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ou est le certificat complet ?&lt;/strong&gt; Il est install&amp;eacute; sur votre machine. Pour voir l&amp;rsquo;ensemble des certificats de votre machine,&lt;/p&gt;
&lt;p&gt;tapez &lt;strong&gt;certmgr.msc&lt;/strong&gt; depuis une invite de commande.&lt;/p&gt;
&lt;p&gt;La console d&amp;rsquo;administration des certificats apparait avec votre nouveau certificat :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure4.jpg"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="azure4" border="0" alt="azure4" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure4_thumb.jpg" width="821" height="350" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;D&amp;rsquo;ailleurs si vous voulez r&amp;eacute;g&amp;eacute;n&amp;eacute;rer un fichier contenant votre cl&amp;eacute; publique, vous pouvez le faire depuis cette console :&lt;/p&gt;
&lt;p&gt;Clic droit sur le certificat &amp;ndash;&amp;gt; Toutes les t&amp;acirc;ches &amp;ndash;&amp;gt; Exporter&lt;/p&gt;
&lt;p&gt;Dans l&amp;rsquo;assistant qui apparait, s&amp;eacute;lectionner :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Non, ne pas exporter la cl&amp;eacute; publique,&lt;/li&gt;
&lt;li&gt;Format X.509 binaire encod&amp;eacute; DER (.cer)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Vous aurez alors votre fichier contenant la cl&amp;eacute; publique qui sera g&amp;eacute;n&amp;eacute;r&amp;eacute;.&lt;/p&gt;
&lt;p&gt;Maintenant que le certificat est cr&amp;eacute;e et que vous avez acc&amp;egrave;s &amp;agrave; votre fichier .cer, il faut l&amp;rsquo;installer sur votre compte Azure. (vous pouvez fermer les 256 fen&amp;ecirc;tres pr&amp;eacute;c&amp;eacute;dentes &lt;img style="border-style: none;" class="wlEmoticon wlEmoticon-winkingsmile" alt="Clignement d'&amp;oelig;il" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/wlEmoticon-winkingsmile_2.png" /&gt;).&lt;/p&gt;
&lt;h3&gt;Installation du certificat&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure5.jpg"&gt;&lt;img style="background-image: none; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border: 0px;" title="azure5" border="0" alt="azure5" align="left" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure5_thumb.jpg" width="511" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Connectez vous au portail de gestion de Windows Azure.&lt;/p&gt;
&lt;p&gt;S&amp;eacute;lectionnez Services h&amp;eacute;berg&amp;eacute;s, Comptes de stockage et CDN (en bas &amp;agrave; gauche) et ensuite s&amp;eacute;lectionnez Certificats de gestion.&lt;/p&gt;
&lt;p&gt;Cliquez sur :&lt;/p&gt;
&lt;p&gt;Ajouter un certificat,&lt;/p&gt;
&lt;p&gt;S&amp;eacute;lectionnez votre fichier .cer,&lt;/p&gt;
&lt;p&gt;et :&lt;/p&gt;
&lt;p&gt;THAT&amp;rsquo;S IT!&lt;/p&gt;
&lt;p&gt;F&amp;eacute;licitations, votre certificat de gestion de votre compte Azure est maintenant pr&amp;ecirc;t &amp;agrave; &amp;ecirc;tre utilis&amp;eacute;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Important : dans votre interface, vous voyez qu&amp;rsquo;il y a une colonne Empreinte num&amp;eacute;rique :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure6.jpg"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="azure6" border="0" alt="azure6" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/Prsentation-des-API-REST-de-Windows-Azur_AEDD/azure6_thumb.jpg" width="952" height="75" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;(elle est affich&amp;eacute;e &amp;eacute;galement dans les propri&amp;eacute;t&amp;eacute;s de votre certificat dans la console certmgr.msc). Copier cette empreinte (thumbprint) dans le presse-papier, on en aura besoin plus tard.&lt;/p&gt;
&lt;p&gt;Remarquez &amp;eacute;galement que le certificat a une dur&amp;eacute;e de vie port&amp;eacute;e &amp;agrave; 1 an maintenant). Donc dans un an, ne vous &amp;eacute;tonnez pas si votre code ne fonctionne plus, c&amp;rsquo;est juste que votre certificat n&amp;rsquo;est plus valable.&lt;/p&gt;
&lt;h3&gt;Utilisation du certificat&lt;/h3&gt;
&lt;p&gt;Comme je le disais plus haut, dans tout appel des API REST de management de Windows Azure, vous devrez envoyer dans le header de votre requ&amp;ecirc;te votre certificat. On doit donc &amp;eacute;crire quelques lignes de code qui nous permettrons d&amp;rsquo;acc&amp;eacute;der &amp;agrave; nos certificats et de retrouver le notre gr&amp;acirc;ce &amp;agrave; son empreinte.&lt;/p&gt;
&lt;p&gt;Heureusement, le .NET Framework nous fournit tout ce qu&amp;rsquo;il faut pour cela :&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;private const string CertificateThumbprint = "[VOTRE EMPREINTE NUMERIQUE]";
private static X509Certificate2 GetCertificate()
{
    var certificateStore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
    try
    {
        certificateStore.Open(OpenFlags.ReadOnly);
        var certs = certificateStore.Certificates.Find(
            X509FindType.FindByThumbprint,
            CertificateThumbprint,
            false);

        if (certs.Count != 1)
        {
            Console.WriteLine("Certificat introuvable (CurrentUser)");
            throw new InvalidOperationException("Certificat introuvable");
        }
        return certs[0];
    }
    finally
    {
        certificateStore.Close();
    }
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Remarquez que je cherche dans StoreLocation.CurrentUser (cf la capture plus haut de certmgr.msc).&lt;/p&gt;
&lt;p&gt;Tout est pr&amp;ecirc;t maintenant pour utiliser les API REST. (la suite dans un prochain num&amp;eacute;ro&amp;hellip;).&lt;/p&gt;</description><pubDate>Thu, 16 Feb 2012 13:36:23 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/articles/presentation-des-api-rest-de-windows-azure-1ere-etape-le-certificat</guid></item><item><title>SQL Azure : c'est les soldes !</title><link>http://www.c2i.fr:80/actualites/sql-azure-c-rsquo-est-les-soldes</link><description>&lt;p&gt;Bonne nouvelle, Microsoft vient de diminuer les prix de SQL Azure (entre &amp;ndash;48% et &amp;ndash;75% de r&amp;eacute;duction).&lt;/p&gt;
&lt;p&gt;Pour une base contenant entre 0 et 100Mo de donn&amp;eacute;es, le prix par mois est de 3.5425 euros (contrairement &amp;agrave; Apple, Microsoft sait que $1 != 1&amp;euro; &lt;img style="border-style: none;" class="wlEmoticon wlEmoticon-winkingsmile" alt="Clignement d'&amp;oelig;il" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/SQL-Azure--cest-les-soldes-_736F/wlEmoticon-winkingsmile_2.png" /&gt;), entre 100Mo et 1Go, 7.085 &amp;euro;, etc.&lt;/p&gt;
&lt;p&gt;Je rappelle &amp;eacute;galement que le prix se calcul au jour (si vous cr&amp;eacute;ez une base de donn&amp;eacute;es pendant 5mn, elle vous sera factur&amp;eacute;e une journ&amp;eacute;e compl&amp;egrave;te) et la taille est arrondie au niveau sup&amp;eacute;rieur (si votre base fait 4.4Go, elle sera factur&amp;eacute;e 5Go).&lt;/p&gt;
&lt;p&gt;Si vous voulez faire une estimation de votre cout Azure, vous avez &lt;a href="https://www.windowsazure.com/fr-fr/pricing/calculator/?WT.mc_id=cmp_pst001_blg_post0055cal" target="_blank"&gt;une calculatrice qui est mise &amp;agrave; votre disposition&lt;/a&gt;. (m&amp;eacute;fiez vous, ce n&amp;rsquo;est pas la taille qui compte, c&amp;rsquo;est la bande passante &lt;img style="border-style: none;" class="wlEmoticon wlEmoticon-winkingsmile" alt="Clignement d'&amp;oelig;il" src="http://www.c2idotnet.com/Media/Default/Windows-Live-Writer/SQL-Azure--cest-les-soldes-_736F/wlEmoticon-winkingsmile_2.png" /&gt;).&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.windowsazure.com/fr-fr/pricing/details/#database/?WT.mc_id=cmp_pst001_blg_post0055pri" target="_blank"&gt;Plus de d&amp;eacute;tail sur le site officiel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/windowsazure/archive/2012/02/14/announcing-reduced-pricing-on-sql-azure-and-new-100mb-database-option.aspx" target="_blank"&gt;Annonce sur le blog de Windows Azure&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;De plus, on peut avoir maintenant des bases de 150Go.&lt;/p&gt;</description><pubDate>Wed, 15 Feb 2012 09:02:49 GMT</pubDate><guid isPermaLink="true">http://www.c2i.fr:80/actualites/sql-azure-c-rsquo-est-les-soldes</guid></item></channel></rss>