Installation, Erste Schritte und
wichtige Informationen (Version 1.1)
My Web Pages Starter Kit ist ein ASP.NET 2.0 Content Management System. Als Webapplikation erlaubt sie dem Benutzer, Websites über ein Administrationsinterface per Webbrowser zu erstellen und zu bewirtschaften.

Das My Web Pages Starter Kit ist modular aufgebaut und leicht zu erweitern. Administratoren können es direkt auf dem Server entpacken und mit dem Aufbau einer Website beginnen. Mit Hilfe von Visual Studio oder einer Visual Studio Web Developer Express Edition können Entwickler individuelle Erweiterungen oder Anpassungen vornehmen.

Dieses Dokument führt Sie durch die Installation und gibt Ihnen Tipps, wie Sie das My Web Pages Starter Kit erweitern können.

Die aktuellsten Versionen, Updates, News und andere wichtige Informationen finden Sie auf Codeplex.com, Projekt "My Web Pages Starter Kit".
1 Lokale Installation
Entpacken Sie alle in der ZIP-Datei enthaltenen Dateien auf Ihre Festplatte
- Starten Sie Visual Studio 2005 oder Visual Studio Web Developer Express
- Öffnen Sie die Web Site mit "Datei->Öffnen Web Site"
- Drücken Sie F5, um die Website in Ihrem Browser darzustellen
(Falls Sie nicht beabsichtigen, Änderungen am My Web Pages Starter Kit vorzunehmen, ist es nicht notwendig, diesen lokal zu installieren. Folglich genügt es, wenn sie die Dateien entpacken und auf Ihren Webhost uploaden. Siehe Abschnitt 2
2 Veröffentlichen der Web Site
- Das My Web Pages Starter Kit benötigt einen ASP.NET 2.0 Hosting-Partner (Auswahl)
Upload der Dateien
  • Eröffnen Sie ein Hosting-Konto bei einem Hosting-Partner, der die Microsoft ASP.NET 2.0 Webtechnologie unterstützt (Auswahl). Der Hoster gibt Ihnen die Zugangsdaten, welche Sie in Ihrer Rolle als Webmaster benötigen.
  • My Web Pages Starter Kit veröffentlichen Sie, indem Sie alle Dateien (ausser App_Data) zu Ihrem Hosting-Partner hochladen. Dies geschieht normalerweise mit einem FTP Client. Dazu benötigen Sie vom Hoster den Servernamen und Ihre Zugangsdaten für Ihr Konto (Login/Passwort).
    Hinweis: Der Ordner App_Data ist ein spezieller ASP.NET 2.0-Ordner und erfordert besondere Rechte (Windows 2000: Schreibrechte für den Account "ASPNET", Windows 2003: Für den Account "Network Service" braucht es Schreibrechte und zusätlich die Berechtigung, die Attribute der übergeordneten Verzeichnisse zu lesen). Wenn Ihr Hoster diesen Ordner bereits erstellt hat, überschreiben Sie ihn keinesfalls, da diese besonderen Rechte sonst verloren gehen können. Falls dieser Ordner nicht vorhanden ist, wenden Sie sich bitte an Ihren Hostanbieter und bitten ihn, den Ordner App_Data zu erstellen. Ohne Zugansberechtigungen kann das My Web Pages Starter Kit keine Informationen speichern.
  • My Web Pages Starter Kit benötigt als Berechtigungslevel "Medium Trust" (Weitere Informationen). Da der Hosting-Partner in der Regel Medium Trust bereits in der machine.config-Datei gesetzt hat, ist diese Spezifikation in der web.config-Datei der Applikation auskommentiert. Diese Codezeile muss nur dann aktiviert werden, wenn Sie das CMS lokal nutzen oder auf einem Server arbeiten, der nicht für Medium Trust vorkonfiguriert wurde.
    Hinweis: Stellen Sie rechtzeitig sicher, dass Ihr Hosting Partner "Medium Trust" erlaubt.
- Starten Sie Ihren Webbrowser und geben Sie die URL Ihrer My Web Pages Starter Kit Website ein. Nach wenigen Sekunden hat das My Web Pages Starter Kit die notwendigen Dateien im App_Code Ordner erzeugt und zeigt Ihnen eine Standard-Homepage.
- Ändern Sie das Administrator Passwort unter "Administration->Benutzerverwaltung".
(Vorkonfigurierter Benutzername ist: admin und das Passwort: admin)
Melden Sie sich als Administrator an (admin/ihrneuespasswort).
- Konfigurieren Sie Ihre Website mit einem Klick auf "Administration->CMS Einstellungen"
  • HINWEIS: Solange kein Smtp-Server oder keine Mail-Absenderadresse angegeben ist, stehen Funktionen mit E-Mail-Versand (z.B. "Passwort neu setzen", Kontaktformular, etc.) nicht zur Verfügung.
3 Architektur
3.1 UI Layer
Für Benutzer zugängliche Seiten befinden sich im "root"-Verzeichnis, Administrationsseiten im "administration"-Verzeichnis. Default.aspx übernimmt die Erstellung aller anpassbaren Seiten (z.B. Seiten, die Ihren eigenen Inhalt oder Ihre eigenen Controls enthalten). Zusätzlich gibt es noch einige spezielle ASPX Seiten, für Suche, Login und Passwortänderungen.
  • Eine Seite kann so genannte Sektionen enthalten. Sektionen sind speziell für das My Web Pages Starter Kit entwickelte Controls (Weitere Informationen). Um ein Control in My Web Pages Starter Kit benutzbar zu machen, verändern Sie es wie folgt:
    • Leiten Sie das Control von My Web Pages Starter Kit.Controls.SectionControlBaseClass ab.
    • Nebst dem Control sollten Sie für jede Sektion eine Klasse mit der Business-Logik und den Daten erstellen (siehe weiter unten, Data Access Layer).
3.2 Business Logic
Standard Klassen: Beachten Sie, dass diese Klassen nicht als Datenobjekte benutzt werden dürfen und fügen Sie keinen Layout- oder UI-Code innerhalb dieser Klassen hinzu.
3.3 Data Access Layer
ASP.NET 2.0 mit Medium Trust (und daher auch My Web Pages Starter Kit) haben die notwendigen Berechtigungen um Dateien in den App_Data Ordner zu schreiben. Die generische Klasse Section vereinfacht den Datenzugriff.

Um eine neue Sektion zu erstellen (z.B. MySection), welche ihre Daten persistieren kann, müssen Sie ihre Klasse von Section<T> ableiten. <T> muss auf MySection.MySectionData gesetzt werden.
Die Klasse sollte dann so beginnen:
MySection : Section<MySection.MySectionData>

Die MySectionData-Klasse muss eine innere Klasse von MySection sein. Alle Felder die persistiert werden sollen, müssen in der inneren Klasse als public members enthalten sein. In der MySection-Klasse können diese persistenten daten der inneren Klasse über das von Section<T> geerbte Feld _data gelesen und geschrieben werden. Wenn Sie dann eine Instanz ihrer MySection-Klasse erzeugen und dem Konstruktor einen GUID übergeben, werden die zur GUID passenden Daten automatisch aus dem App_Data Ordner geladen und können dann über das _data-Feld benutzt werden.

Wenn Sie an einer bestimmten Stelle in ihrem Code die geänderten Werte ihrer Sektion wieder persistieren möchten, können Sie dazu die Methode SaveData() der Sektion benutzen (diese Methode wird von Section<T> geerbt).

Ein guter Ausgangspunkt zum Erstellen eigener Sektionen ist die mit My Web Pages Starter Kit mitgelieferte Sektion HtmlContent zu benutzen, da diese mit wenigen Zeilen Code die grundlegenden Prinzipien aufzeigt.
4 Sicherheit
4.1 Webmaster
Als Webmaster sollten Sie folgende wichtige Punkte beachten:
  1. Bitte ändern Sie das "admin" Passwort unmittelbar nach der Installation Ihrer My Web Pages Starter Kit Website.
  2. Melden Sie sich als Administrator an und setzen den smtp Server (diese Adresse erhalten Sie von Ihrem Hoster) ausserdem sollten Sie eine e-Mail für das Administrationskonto angeben.
  3. Abonnieren Sie den My Web Pages Starter Kit Newsfeed auf Codeplex.com, um über wichtige Sicherheitshinweise informiert zu werden.
  4. Überprüfen Sie die Sicherheit Ihrer Shared Hosting Umgebung, bevor Sie dasMy Web Pages Starter Kit, einen Hosting-Partner und einen Account auswählen.
    1. Speichern Sie keine persönlichen Informationen auf einer Website in einer Shared Hosting Umgebung, z.B.:
      • persönliche Daten anderer Menschen
      • Gesundheitsinformationen
      • Kreditkarteninformationen
    2. Überprüfen Sie, ob eine Shared Hosting Umgebung für Ihr Vorhaben sicher genug ist.
    3. Überlegen Sie, ob eine verschlüsselte Kommunikation (Benutzernamen, Passwörter) sinnvoll sein könnte.
  5. Machen Sie regelmässige Backups der Daten, indem Sie den Inhalt des App_Data-Ordners via FTP auf Ihre Festplatte herunterladen.
  6. Weisen Sie klare Verantwortlichkeiten für die Pflege der Website zu:
    1. Wer erhält Benachrichtigungen zu Sicherheitsproblemen?
    2. Wer macht die regelmässigen Backups?
4.2 Entwickler
Als Entwickler sollten Sie folgende wichtige Punkte beachten:
  1. Verändern Sie nicht die Art und Weise, wie Passwörter gehashed sind.
  2. Erweitern Sie die Applikation nicht in einer Weise, die das unverschlüsselte Speichern persönlicher Daten ermöglicht. Z.B:
    • persönliche Daten anderer Menschen
    • Gesundheitsinformationen
    • Kreditkarteninformationen
  3. Berücksichtigen Sie die optimalen Sicherheitsverfahren, wenn Sie das Kit erweitern oder ändern.
  4. Vergewissern Sie sich, dass Sie den My Web Pages Starter Kit Newsfeed auf Codeplex.com abonniert haben, um Neuigkeiten zum Kit und Sicherheitshinweise zu erhalten.
  5. Bleiben Sie in Kontakt mit Ihren Auftraggebern, für die Sie das My Web Pages Starter Kit implementiert, verändert oder erweitert haben und informieren Sie sie, wenn ein Sicherheitsproblem auftaucht.
  6. Stellen Sie sicher, dass Sie immer eine Sicherungskopie des (angepassten) Quellcodes haben, da Sie eventuell in Zukunft Sicherheitslösungen testen oder integrieren müssen.
5 IIS-Konfiguration für die Silverlight Gallery
Falls XAML im IIS nicht als Mime-Typ konfiguriert ist, kann das Silverlight Plug-in nicht geladen werden. (Falls Sie IIS 7.0 verwenden, brauchen Sie die folgenden Schritte nicht auszuführen, da der MIME Typ schon konfiguriert ist.) Damit die Silverlight Gallery dargestellt werden kann, konfigurieren Sie den IIS wie folgt:
  1. Wählen Sie im IIS Ihren Webauftritt
  2. Wählen Sie aus dem Kontext Menü "Properties"
  3. Wählen Sie die Registerkarte "HTTP-Header"
  4. Klicken Sie auf die Schaltfläche "MIME Types..."
  5. Falls der Typ .xaml noch nicht aufgelistet ist, klicken Sie auf "New"
  6. Beschreiben Sie den Typ wie folgt:
    Extension: .xaml
    MIME type: application/xaml+xml
  7. Klicken Sie auf ok, dann auf Apply
Weitere Infos