Whether you need to use this from Visual Studio or other Windows packaging mechanism such as scaffolding, leveraging the new Windows Azure SDK 1.6 tools to avoid managing certificates might be a good choice. This is the easiest way now.
Que vous ayez besoin d’utiliser cela depuis Visual Studio ou depuis un autre mode d’empaquetage tel que l’échaffaudage, utiliser les capacités du nouveau SDK Windows Azure 1.6 de façon à ne pas avoir à gérer les certificats peut être un bon choix. C’est a priori le plus simple aujourd’hui.
In this post, I assume you have no knowledge on Visual Studio, and you didn’t install it on your development machine.
Dans ce billet, je pars du principe qu’on n’a aucune connaissance de Visual Studio, et qu’il n’est pas installé sur la machine de développement.
Then start a Visual Studio Project and add a worker role only in it (the goal is to have the simplest Windows Azure project and use the tools inside Visual Studio which abstract away certificate management).
Puis, démarrer un projet Visual Studio et y ajouter uniquement un worker role (le but est d’avoir le project Windows Azure le plus simple et utiliser les outils Visual Studio qui masquent la gestion sous-jacente des certificats).
Choose a username and password and enter them in the dialog box. In this example, username=RDAdmin, password=ULzikjcd81 (NB: not the actual one, no use trying to use it to connect to my assets!).
Choisir un nom d’utilisateur et un mot de passe et les saisir dans la boîte de dialogue. Dans cet exemple, nom d’utilisateur=RDAdmin, mot de passe=ULzikjcd81 (NB: ce n’est pas le mot de passe réel, inutil d’essayer de vous connecter à mes ressources!).
This populated the .csfg and the .csdef files
Cela a rempli les fichiers .csfg et .csdef
Here is the content of the two files (I ignore the ServiceConfiguration.Local.cscfg which is used only with the Emulator):
Voici le contenu des deux fichiers (j’ignore ici le fichier ServiceConfiguration.Local.cscfg qui est utilisé avec l’émulateur uniquement)
The lines containing RemoteAccess or RemoteForwarder in the configuration files may be merged into .csdef and .cscfg files generated outside Visual Studio in order to have Remote Desktop setup.
Les lignes avec RemoteAccess ou RemoteForwarder dans les fichiers de configuration peuvent être incluses dans les fichiers .csdef et .cscfg générées en dehors de Visual Studio de façon à avoir l’accès au bureau à distance.
Important: an additional step is necessary to prepare your Windows Azure environment. This consists in starting a deployment and stop it, in order to upload a certificate (cf below).
Important: une étape complémentaire est nécessaire pour préparer son environnement Windows Azure. Cela consiste à démarrer un déploiement et l’arrêter immédiatement, de façon à charger un certificat (voir plus bas).
Sign in with a Windows Live ID that has access to a valid Windows Azure Subscription. If you don’t have one, you can go to https://windowsazure.fr where you will be explained how to get one.
Se connecter avec un compte Live ID qui a accès à un abonnement Windows Azure en cours de validité. Si vous n’en n’avez pas, vous pouvez aller à https://windowsazure.fr où on vous expliquera comment procéder.
Save the file locally
Sauvegarder le fichier localement
go back to Visual Studio 2010, Click import and choose the file you just downloaded
retourner à Visual Studio 2010, cliquer sur Import et choisir le fichier qui avait été téléchargé
make sure you choose the right hosted service (the one where the final app will eventually be deployed)
Vérifier que le service hébergé est bien le bon (celui vers lequel on déploiera l’application au final)
That’s it. If you don’t need to change development machine or don’t want to have further explanations about the certificates, you can skip the rest of this post.
Voilà. Si vous n’avez pas besoin de changer de machine de développement ou que vous ne souhaiter pas avoir les explications sur les certificats, vous pouvez terminer ici la lecture de ce billet.
NB: Under the hood, this created a certificate that will be used to encrypt the password (ULzikjcd81). If you change machines, you may have to copy the certificate with its private key thru a .pfx file. More details can be found here and here. Here is the certificate that was used in the above example:
NB: En coulisses, tout cela a créé un certificat qui est utilisé pour chiffrer le mot de passe (ULzikjcd81). Si on doit changer de machine, il peut être nécessaire de copier le certificat avec sa clef privée via un fichier .pfx. On trouvera plus d’infos sur le sujet ici et ici. Voici le certificat qui a été utilisé dans l’exemple ci-dessus:
Starting a publish to Windows Azure uploaded that certificate to Windows Azure:
Le démarrage de la publication vers Windows Azure et eu pour effet (recherché) de charger ce certificat: