<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://mediawiki.wissen-ahrensburg.de/index.php?action=history&amp;feed=atom&amp;title=Webframeworkk%2FASP.NET_Core%2FIdentit%C3%A4ts-_und_Autorisierungssicherheit</id>
	<title>Webframeworkk/ASP.NET Core/Identitäts- und Autorisierungssicherheit - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.wissen-ahrensburg.de/index.php?action=history&amp;feed=atom&amp;title=Webframeworkk%2FASP.NET_Core%2FIdentit%C3%A4ts-_und_Autorisierungssicherheit"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Identit%C3%A4ts-_und_Autorisierungssicherheit&amp;action=history"/>
	<updated>2026-08-19T17:35:53Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Dokument</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Identit%C3%A4ts-_und_Autorisierungssicherheit&amp;diff=282&amp;oldid=prev</id>
		<title>imported&gt;Import: Version 207</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Identit%C3%A4ts-_und_Autorisierungssicherheit&amp;diff=282&amp;oldid=prev"/>
		<updated>2026-02-28T04:57:50Z</updated>

		<summary type="html">&lt;p&gt;Version 207&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).&amp;#039;&amp;#039;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Willkommen zum umfassenden Tutorial über &amp;#039;&amp;#039;&amp;#039;ASP.NET Core Identity&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;MVC&amp;#039;&amp;#039;&amp;#039; basierend auf unserer Analyse. Dieser Leitfaden deckt Authentifizierung, Autorisierung und wesentliche MVC-Muster ab.&lt;br /&gt;
&lt;br /&gt;
== Einführung in ASP.NET Core Identity ==&lt;br /&gt;
&lt;br /&gt;
ASP.NET Core Identity ist ein robustes und flexibles Mitgliedschaftssystem, mit dem Sie Authentifizierungs- und Autorisierungsfunktionen zu Ihren Webanwendungen hinzufügen können.&lt;br /&gt;
&lt;br /&gt;
=== Zweck und Hauptmerkmale ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Benutzerauthentifizierung:&amp;#039;&amp;#039;&amp;#039; Überprüfung der Benutzeridentität und Kontrolle des Zugriffs.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Benutzerverwaltung:&amp;#039;&amp;#039;&amp;#039; Handhabung von Registrierung, Login, Logout, Passwort-Resets und Profilverwaltung.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Autorisierung:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;Rollenbasiert (Role-Based):&amp;#039;&amp;#039;&amp;#039; Zugriffsbeschränkung basierend auf Benutzerrollen (z. B. Admin, User).&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;Anspruchsbasiert (Claims-Based):&amp;#039;&amp;#039;&amp;#039; Entscheidungen basierend auf Benutzerattributen (Claims).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Externe Logins:&amp;#039;&amp;#039;&amp;#039; Integration mit Google, Facebook usw.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Sicherheit:&amp;#039;&amp;#039;&amp;#039; Unterstützung für Zwei-Faktor-Authentifizierung (2FA) und Passwort-Hashing.&lt;br /&gt;
&lt;br /&gt;
== Hauptkomponenten ==&lt;br /&gt;
&lt;br /&gt;
=== Identity-Modelle ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;ApplicationUser:&amp;#039;&amp;#039;&amp;#039; Erweitert `IdentityUser`. Repräsentiert Benutzer in Ihrer App. Kann benutzerdefinierte Eigenschaften wie `PersonName` enthalten.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;ApplicationRole:&amp;#039;&amp;#039;&amp;#039; Erweitert `IdentityRole`. Definiert Rollen innerhalb der Anwendung.&lt;br /&gt;
&lt;br /&gt;
=== Kerndienste (Manager) ===&lt;br /&gt;
&lt;br /&gt;
Wird über Dependency Injection in Ihren Controllern verwaltet:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;UserManager&amp;lt;TUser&amp;gt;:&amp;#039;&amp;#039;&amp;#039; Verwaltet Benutzerkonten (Erstellen, Löschen, Suchen, Aktualisieren).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;SignInManager&amp;lt;TUser&amp;gt;:&amp;#039;&amp;#039;&amp;#039; Kümmert sich um Anmelde- und Abmeldevorgänge.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;RoleManager&amp;lt;TRole&amp;gt;:&amp;#039;&amp;#039;&amp;#039; Verwaltet Rollen und deren Zuweisung zu Benutzern.&lt;br /&gt;
&lt;br /&gt;
== Implementierungsleitfaden ==&lt;br /&gt;
&lt;br /&gt;
=== 1. Registrierung (POST) ===&lt;br /&gt;
&lt;br /&gt;
Um einen Benutzer zu registrieren, folgen Sie normalerweise diesen Schritten:&lt;br /&gt;
&lt;br /&gt;
# Validieren des DTO (Data Transfer Object).&lt;br /&gt;
# Erstellen einer `ApplicationUser`-Instanz.&lt;br /&gt;
# Verwendung von `_userManager.CreateAsync(user, password)`.&lt;br /&gt;
# Zuweisung einer Standardrolle (z. B. “User” oder “Admin”).&lt;br /&gt;
# Den Benutzer anmelden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;// Code-Snippet: Einen Benutzer registrieren&lt;br /&gt;
ApplicationUser user = new ApplicationUser() { UserName = model.Email, Email = model.Email };&lt;br /&gt;
IdentityResult result = await _userManager.CreateAsync(user, registerDTO.Password);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== 2. Login (POST) ===&lt;br /&gt;
&lt;br /&gt;
Verwenden Sie den `SignInManager`, um Benutzer zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;// Code-Snippet: Einen Benutzer anmelden&lt;br /&gt;
var result = await _signInManager.PasswordSignInAsync(loginDTO.Email, loginDTO.Password, isPersistent: false, lockoutOnFailure: false);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Verwenden Sie &amp;#039;&amp;#039;&amp;#039;ReturnUrl&amp;#039;&amp;#039;&amp;#039;, um Benutzer nach einer erfolgreichen Anmeldung zu ihrem ursprünglichen Ziel zurückzuleiten.&lt;br /&gt;
&lt;br /&gt;
=== 3. Logout ===&lt;br /&gt;
&lt;br /&gt;
Rufen Sie einfach die Methode zum Abmelden auf:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;await _signInManager.SignOutAsync();&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Konfiguration in Program.cs ==&lt;br /&gt;
&lt;br /&gt;
Konfigurieren Sie die Dienste für Identity und Autorisierung in Ihrer Startup-Datei.&lt;br /&gt;
&lt;br /&gt;
=== Identity-Konfiguration ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;services.AddIdentity&amp;lt;ApplicationUser, ApplicationRole&amp;gt;(options =&amp;gt; {&lt;br /&gt;
  options.Password.RequiredLength = 6;&lt;br /&gt;
  options.Password.RequireNonAlphanumeric = true;&lt;br /&gt;
  options.Password.RequireUppercase = true;&lt;br /&gt;
  options.Password.RequireLowercase = true;&lt;br /&gt;
  options.Password.RequireDigit = true;&lt;br /&gt;
})&lt;br /&gt;
.AddEntityFrameworkStores&amp;lt;ApplicationDbContext&amp;gt;()&lt;br /&gt;
.AddDefaultTokenProviders();&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Autorisierungsrichtlinien ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;services.AddAuthorization(options =&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  var policy = new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build();&lt;br /&gt;
  options.FallbackPolicy = policy; // Standardmäßig auf alles anwenden&lt;br /&gt;
});&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Fortgeschrittene MVC-Funktionen ==&lt;br /&gt;
&lt;br /&gt;
=== Tag Helper ===&lt;br /&gt;
&lt;br /&gt;
Verwenden Sie diese in Ihren Views für eine saubere HTML-Generierung:&lt;br /&gt;
&lt;br /&gt;
* `asp-controller`: Ziel-Controller angeben.&lt;br /&gt;
* `asp-action`: Ziel-Action angeben.&lt;br /&gt;
* `asp-route-returnurl`: Rückgabe-URL übergeben.&lt;br /&gt;
* `asp-validation-for`: Validierungsfehler anzeigen.&lt;br /&gt;
&lt;br /&gt;
=== Remote-Validierung ===&lt;br /&gt;
&lt;br /&gt;
Ermöglicht serverseitige Validierung (z. B. Prüfung, ob eine E-Mail bereits existiert) ohne vollständigen Neuladevorgang der Seite.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;public class RegisterDTO&lt;br /&gt;
{&lt;br /&gt;
  [Remote(action: &amp;quot;IsEmailAlreadyRegistered&amp;quot;, controller: &amp;quot;Account&amp;quot;, ErrorMessage = &amp;quot;E-Mail wird bereits verwendet&amp;quot;)]&lt;br /&gt;
  public string Email { get; set; }&lt;br /&gt;
}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Areas ===&lt;br /&gt;
&lt;br /&gt;
Organisieren Sie große Anwendungen in logische Module (z. B. ein “Admin”-Bereich).&lt;br /&gt;
&lt;br /&gt;
* Verwenden Sie das Attribut `[Area(“Admin”)]` an Controllern.&lt;br /&gt;
* Konfigurieren Sie das Area-Routing in der `Program.cs`.&lt;br /&gt;
&lt;br /&gt;
=== Konventionelles vs. Attribut-Routing ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Konventionell:&amp;#039;&amp;#039;&amp;#039; Global definiert (z. B. `{controller=Home}/{action=Index}/{id?}`).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Attribut:&amp;#039;&amp;#039;&amp;#039; Direkt an Actions mit `[Route(“mein-pfad”)]` definiert.&lt;br /&gt;
&lt;br /&gt;
== Best Practices für Sicherheit ==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;HTTPS:&amp;#039;&amp;#039;&amp;#039; In der Produktion immer aktivieren.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;XSRF (CSRF) Schutz:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** Verwenden Sie `[ValidateAntiForgeryToken]` bei POST-Actions.&lt;br /&gt;
** Nutzen Sie Tag Helper in Formularen, um das Token automatisch einzubinden.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Passwortkomplexität:&amp;#039;&amp;#039;&amp;#039; Erzwingen Sie stets starke Passwortregeln.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Autorisierungs-Attribute:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** `[Authorize]`: Beschränkt den Zugriff auf angemeldete Benutzer.&lt;br /&gt;
** `[AllowAnonymous]`: Ermöglicht Zugriff für jeden.&lt;br /&gt;
&lt;br /&gt;
== Interview-Schnellreferenz ==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Authentifizierung:&amp;#039;&amp;#039;&amp;#039; Wer bist du? (Identity)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Autorisierung:&amp;#039;&amp;#039;&amp;#039; Was darfst du tun? (Rollen/Claims)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Claims:&amp;#039;&amp;#039;&amp;#039; Schlüssel-Wert-Paare, die den Benutzer beschreiben (z. B. Geburtsdatum, MitarbeiterID).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Rollen vs. Claims:&amp;#039;&amp;#039;&amp;#039; Rollen sind Gruppen; Claims sind spezifische Attribute.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;#039;&amp;#039;Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).&amp;#039;&amp;#039;&lt;/div&gt;</summary>
		<author><name>imported&gt;Import</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Identit%C3%A4ts-_und_Autorisierungssicherheit&amp;diff=3220&amp;oldid=prev</id>
		<title>Thorsten: Die Seite wurde neu angelegt: „Willkommen zum umfassenden Tutorial über &#039;&#039;&#039;ASP.NET Core Identity&#039;&#039;&#039; und &#039;&#039;&#039;MVC&#039;&#039;&#039; basierend auf unserer Analyse. Dieser Leitfaden deckt Authentifizierung, Autorisierung und wesentliche MVC-Muster ab.  == Einführung in ASP.NET Core Identity == ASP.NET Core Identity ist ein robustes und flexibles Mitgliedschaftssystem, mit dem Sie Authentifizierungs- und Autorisierungsfunktionen zu Ihren Webanwendungen hinzufügen können.  === Zweck und Hauptmerkmale ==…“</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Identit%C3%A4ts-_und_Autorisierungssicherheit&amp;diff=3220&amp;oldid=prev"/>
		<updated>2026-02-28T04:57:50Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „Willkommen zum umfassenden Tutorial über &amp;#039;&amp;#039;&amp;#039;ASP.NET Core Identity&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;MVC&amp;#039;&amp;#039;&amp;#039; basierend auf unserer Analyse. Dieser Leitfaden deckt Authentifizierung, Autorisierung und wesentliche MVC-Muster ab.  == Einführung in ASP.NET Core Identity == ASP.NET Core Identity ist ein robustes und flexibles Mitgliedschaftssystem, mit dem Sie Authentifizierungs- und Autorisierungsfunktionen zu Ihren Webanwendungen hinzufügen können.  === Zweck und Hauptmerkmale ==…“&lt;/p&gt;
&lt;a href=&quot;https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Identit%C3%A4ts-_und_Autorisierungssicherheit&amp;amp;diff=3220&amp;amp;oldid=282&quot;&gt;Änderungen zeigen&lt;/a&gt;</summary>
		<author><name>Thorsten</name></author>
	</entry>
</feed>