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

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

  1. Erstellen Sie danach eine neue SQL Azure Datenbank und Konfigurieren Sie die SQL Azure Firewall so, dass sie von der lokalen Entwicklungsmaschine Zugriff erhalten.
  2. 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.
    ABB_02_04 SQL Azure Konfigurationsskripte
  3. Öffnen Sie nun das SQL Server Management Studio und verbinden sich mit der zuvor angelegten SQL Azure Datenbank.
  4. 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

  1. 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.
  2. Wählen Sie den Menüpunkt New Project...
  3. Setzen Sie den Projektnamen und belassen Sie die sonstigen Einstellungen auf Ihren ursprünglichen Werten.
  4. Bestätigen Sie Ihre Eingabe mit OK.
  5. 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 >.
  6. Bestätigen Sie Ihre Auswahl mit OK. Visual Studio legt daraufhin eine neue Solution an und konfiguriert diese entsprechend Ihrer Auswahl mit einer WebRole.
  7. 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.
    ABB_03_04 Connection String
  8. Kopieren Sie sich den ADO.NET Connection String und schließen Sie die Eingabemaske.
  9. Öffnen Sie in Visual Studio die Datei web.config.
  10. 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>
    ...
  11. Ersetzen Sie den Textstring myPassword durch das von Ihnen vergebene Passwort.
  12. Speichern Sie die Datei durch Auswahl der Schaltfläche Save.
  13. Testen Sie die Anwendung lokal durch Anklicken der Schaltfläche F5.
    ABB_03_05 lokaler Test
  14. 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