How-to-Guide: Erstellung einer ASP.NET-basierten Windows Azure Anwendung mit SqlMembershipProvider
Im Folgenden möchte ich Schritt für Schritt die Erstellung einer ASP.NET-basierten Windows Azure Anwendung mit SqlMembershipProvider beschreiben.
Im Rahmen der Übung wird eine ASP.NET Anwendung erstellt, die mit Authentifizierungslogik ausgestattet ist. Die Authentifizierung wird mit Hilfe des SqlMembershipProviders implementiert. Dieser greift für die Authentifizierung auf eine SQL Azure Datenbank zu, welche in der Übung ebenfalls angelegt und konfiguriert wird. Ergebnis ist eine Webanwendung, die auf Windows Azure ausgeführt wird und für die Authentifizierung auf SQL Azure zugreift.
Übungsschritte
- Anlegen eines Hosted Service auf Windows Azure
- Anlegen und Konfigurieren einer SQL Azure Datenbank
- Anlegen, Implementierung, Konfiguration und lokaler Test der ASP.NET-Anwendung
- Installation und Betrieb des Cloud Service auf Windows Azure
Voraussetzungen für die Durchführung der Schritte
- Eine Windows Live ID
- Ein unter der Windows Live ID registrierten Windows Azure Account zum Anlegen eines Anwendungsprojektes.
- Visual Studio 2010 (Ultimate, Professional oder WebDeveloper)
- Windows Azure Software Development Kit (SDK)
- SQL Server Management Studio
- Installationsskripte für die Datenbank
Sollten Sie keinen Azure Account haben, können Sie sich unter folgendem Link eine kostenlosen Testaccount, der 3 Wochen lang gültig ist, beschaffen:
https://www.microsoft.com/germany/net/WindowsAzure/Starten.aspx
Schritt 1: Anlegen eines Hosted Service in Windows Azure
Legen Sie zunächst einen neuen Hosted Service unter Windows Azure an. Dabei ist Name, Region etc. für die Übung egal.
Schritt 2: Anlegen und Konfigurieren einer SQL Azure Datenbank
- Erstellen Sie danach eine neue SQL Azure Datenbank und Konfigurieren Sie die SQL Azure Firewall so, dass sie von der lokalen Entwicklungsmaschine Zugriff erhalten.
- Laden Sie von dem URL
https://code.msdn.microsoft.com/KB2006191
die Datei InstallAspSchema.zip herunter und entpacken den Inhalt in ein Verzeichnis Ihrer Wahl.
- Öffnen Sie nun das SQL Server Management Studio und verbinden sich mit der zuvor angelegten SQL Azure Datenbank.
- Führen Sie der Reihe nach die folgenden Konfigurationsskripte aus
InstallCommons.sql, InstallMembership.sql, InstallRoles.sql
Die erstellen Datenbankobjekte werden später für den SqlMembershipProvider benötigt.
Schritt 3: Erstellen eines neuen Cloud Services für Windows Azure
- Starten Sie Visual Studio als Administrator. Klicken Sie hierzu mit der rechten Maustaste auf das Visual Studio Symbol und wählen im Kontextmenü Run as Administrator.
- Wählen Sie den Menüpunkt New Project...
- Setzen Sie den Projektnamen und belassen Sie die sonstigen Einstellungen auf Ihren ursprünglichen Werten.
- Bestätigen Sie Ihre Eingabe mit OK.
- Fügen Sie Ihrem Projekt eine ASP.NET Web Role hinzu. Markieren Sie hierzu in der folgenden Eingabemaske den entsprechenden Eintrag und bestätigen mit >.
- Bestätigen Sie Ihre Auswahl mit OK. Visual Studio legt daraufhin eine neue Solution an und konfiguriert diese entsprechend Ihrer Auswahl mit einer WebRole.
- Lassen Sie Sich vom SQL Azure Portal den Connection String zur zuvor angelegten Datenbank anzeigen. Markieren Sie hierzu die Datenbank und klicken auf die Schaltfläche Connection String.
- Kopieren Sie sich den ADO.NET Connection String und schließen Sie die Eingabemaske.
- Öffnen Sie in Visual Studio die Datei web.config.
- Suchen Sie in dieser Datei den Abschnitt <connectionStrings> und ersetzten den dort hinterlegten Connection String durch den zuvor kopierten Connection String.
...
<connectionStrings>
<add name="ApplicationServices"
connectionString="Server=tcp:p4rze1agse.database.windows.net;
Database=DemoDB;
User ID=hsirtl@p4rze1agse;
Password=myPassword;
Trusted_Connection=False;
Encrypt=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>
... - Ersetzen Sie den Textstring myPassword durch das von Ihnen vergebene Passwort.
- Speichern Sie die Datei durch Auswahl der Schaltfläche Save.
- Testen Sie die Anwendung lokal durch Anklicken der Schaltfläche F5.
- Legen Sie dabei einen neuen User an. Dieser wird in die SQL Azure Datenbank geschrieben.
Schritt 4: Installation des Cloud Service auf Windows Azure
Installieren Sie nun abschließend die Anwendung auf Windows Azure in den in Schritt 1 angelegten Hosted Service. Damit wird dann die Anwendung selbst auch auf Azure ausgeführt. Programmlogik und User-Datenbank sind also in der Cloud.
Weitere Informationen
- Konfigurationsskripte für SQL Azure (zur Verwendung des SqlMembershipProviders)
https://code.msdn.microsoft.com/KB2006191 - Deutsches Azure Portal mit einem ausführlichen How-To-Guide zu diesem Thema
https://www.microsoft.de/azure