ASP.NET: Eigenen RoleProvider schreiben

Da ich nun einen eigenen MembershipProvider nutze, möchte ich auch entsprechenden meinen RoleProvider anpassen.
Dies ist eigentlich ähnlich einfach, wie der MembershipProvider. Dazu wird eine eigene Klasse von System.Web.Security.RoleProvider abgeleitet. Auch könnt ihr hier wieder mit dem Überschreiben der Methode „Initialize()“ Werte aus der „web.config“ übergeben. Wo ihr die Daten ablegt, bleibt euch auch hier wieder überlassen.

Das Einbinden in die „web.config“ erfolgt über folgenden Eintrag:

    <roleManager enabled="true" defaultProvider="MyPersonalRoleProvider">
      <providers>
        <clear />
        <add name="MyPersonalRoleProvider" type="MyApp.PersonalRoleProvider" connectionStringName="MSPConnString" />
      </providers>
   </roleManager>

Wichtig ist die erste Zeile. Standardmäßig steht „enabled“ nämlich auf false!
Der RoleProvider ist nun fertig zum Einsatz! In eurem ASP.NET Projekt könnt ihr auf die Daten über die Standardmethoden wie etwa „Role.IsUserInRole()“ etc. zugreifen. Mehr dazu steht in der MSDN.

ASP.NET: Eigenen MembershipProvider schreiben

Manchmal kann es Sinn machen, nicht den standardmäßigen ASP.NET MembershipProvider zu nutzen. Daher möchte ich euch kurz erklären, wie ihr einen eigenen MembershipProvider schreiben könnt. Dabei ist es letztendlich euch überlassen, wo die Daten gespeichert sind.

Ich benutze bei einem Projekt etwa eine SQL-Datenbank und speicher bzw. lese die Daten per Stored-Procedures. Man könnte die Daten aber auch in einer XML-Datei speichern oder direkt hardcoded in der Klasse.
ASP.NET: Eigenen MembershipProvider schreiben weiterlesen

Nützlich: wwwsqldesigner

Heute mal ein kleines, aber feines Tool. Ich brauchte etwas, um meine SQL Datenbank zu designen. Damit man auch alle Beziehungen schön im Überblick hat.
Da bin ich auf wwwsqldesigner gestoßen. Läuft sofort und ohne Installation. Das ganze basiert auf JavaScript.
Wer das Ding auf nen PHP fähigen Server schiebt, kann seine Datenbank-Designs auch in einer Datenbank speichern. Ansonsten kann man sich entweder den MSSQL / MySQL Befehl ausgeben lassen, um die Datenbank wie gewünscht zu erstellen oder aber den XML Code, mit dem das Design später wieder geladen und bearbeitet werden kann.

Sehr schönes Tool, läuft aber nicht im IE 8!