Hallo!
Ich habe eine neue "ASP.NET MVC 4-Webanwendung" mit Form-Authentifizierung erstellt.
Sobald ich die Website gestartet habe und einen neuen Benutzer angelegt habe wurde auf meinem SQLExpress Server eine neue Datenbank:
aspnet-MeineMvcAnwendung-20120930101122
mit den folgenden Tabellen erstellt:
UserProfile
webpages_Membership
webpages_OAuthMembership
webpages_Roles
webpages_UsersInRoles
Folgendes ist mir in etwa klar:
) Ich kann mittels meiner neuen Webseite jetzt also neue Benutzer erstellen.
) Ich kann auch mittels: Visual Studio / Projekt / ASP.NET-Konfiguration / Websiteverwaltungs-Tool neuen Benutzer erstellen.
) Mittels einem eigenes erstellen Membership-Provider könnte ich auch auf eine vorhandene Datenbank zugreifen die Benutzer-Daten und Kennwörter enthält, jedoch wird empfohlen den vorhandenen Membership-Provider zu verwenden.
) Diese autom. erstellte DB besitzt keine Stored-Procedures zum anlegen von Benutzern. (Anders wie bei der selbst erstellten DB via C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe)
) Die Kennwörter in der DB werden verschlüsselt abgespeichert. (Das irgendwie auf "Clear" zu ändern klappte bis jetzt nicht)
Wie kann ich jetzt (z.b. per einer kleinen Windows-Forms Anwendung) autom. jede Menge Benutzer inkl. Kennwörter anlegen ohne mir einen eigenen Membership-Provider zu erstellen?
Das einzige was mich jetzt davon abgehalten hat ist, dass die Kennwörter in der DB irgendwie verschlüsselt werden ...
Hat jemand einen Tipp für mich?
Danke & lg myGil
Das ist auch gut so, dass die Kennwoerter gesalzen abgelegt werden. Passwoerter als Klartext ist eine Sicherheitsluecke und darf niemals sein.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Und wie kann ich jetzt meine mehreren hundert Benutzer anlegen oder wie erfülle ich die Anforderung von einer Windows Forms Applikation um die Verwaltung der Profile zu ermöglichen wenn ich den Verschlüsselungsmechanismus nicht kenne und dadurch nicht auf SQL-Ebene die DB selbst manipulieren kann?
Die Anforderung ist doch bestimmt nicht so unüblich. Wir möchten aus einer bestehenden Applikation mit einer bestehendem Kundenstamm bestimmten Benutzern per Knopfdruck Zugang gewähren.
Danke myGil
Hallo MyGil
Der Membership-Provider verschlüsselt normalerweise mit SHA-1 (default).
Mit diesem Wissen kannst du es easy nachbilden :
Beste Grüsse
Diräkt
Edit : Sonst hier noch ein intressanter Link
Nimm doch einfach direkt die Schnittstelle des MembershipProviders?
MembershipProvider.CreateUser Method
Zur Not kannst Du immer noch eine Schnittstelle direkt an die Webanwendung machen, die das dann als Mass-Insert für Dich übernimmt (so würde auch ich das machen).
Hier mit zwei Anwendungen auf die gleiche DB gehen halte ich für einen schmutzigen Workaround und wär mir auch zu blöd 😉
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo,
da kann ich Abt - wie so oft - nur Recht geben. Gleicher Provider, gleiche Schnittstelle -> gleiches Verfahren. Ich würde auch darüber gehen. Bei konkreten Problemn mit der Umsetzung kannst Du Dich ja hier nochmal melden.
Edit: (Beachte aber vorsorglich dabei [Hinweis] Wie poste ich richtig? Punkt 5.
Gruß, MarsStein
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Nimm doch einfach direkt die Schnittstelle des MembershipProviders?
MembershipProvider.CreateUser MethodZur Not kannst Du immer noch eine Schnittstelle direkt an die Webanwendung machen, die das dann als Mass-Insert für Dich übernimmt (so würde auch ich das machen).
Das dürfte das sein was ich suche!
Kannst du mir grob sagen wie das funktioniert oder was ich dafür brauche bzw. wo ich anfangen soll zu suchen?
Danke lg myGil
Ehrlich gesagt sollte die MSDN ausreichen wie man das macht. Ich werd den Code sicher nich fuer Dich schreiben.
Etwas Eigeninitiative wuerde Dir nicht schaden; dann haettest Du die Methode vor der Threaderoeffnung auch schon gefunden.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo Abt!
Jetzt hast du mich falsch verstanden! Ich wollte natürlich nicht dass du den Code für mich schreibst! Ich erhoffte mir damit ein paar Stichwörter oder noch 1-2 weitere Tipps die mir bei der Suche nach der Lösung meines Problems vielleicht noch weiterhelfen könnten.
lg myGil
Hab ich.
Nimm doch einfach direkt die Schnittstelle des MembershipProviders?
>
Google-Suche nach windows forms asp MembershipProvider
Trifft nun [Hinweis] Wie poste ich richtig? 1.1 und 4c zu.
Es gibt jetzt eigentlich keinen Grund mehr, dass irgendwas nicht klar sein sollte.
Und
Etwas Eigeninitiative wuerde Dir nicht schaden ist jetzt definitiv auch erreicht.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo Abt!
Vielen Dank für deine Hilfe und sorry wenn ich dich mit meinen Fragen verärgert habe!
lg myGil