Sur la base de asp.net concernant l'authentification et l'autorisation

Comprendre la certification (authentification) et de l'autorisation (autorisation) Concept

Avant de commencer , nous devons trouver la différence entre les deux. Nous sommes certifiés lors de l' accès à certaines ressources de données, la nécessité de fournir une identité d'identité, le serveur contenant cette identité, à un conteneur de stockage pour correspondre, si cela correspond à la pour prouver que l'authentification est réussie.
si vous avez accès aux ressources nécessaires pour voir si vous avez la permission de cette ressource, pour obtenir la permission, vous devez donner votre autorisation d'identité, qui est, si vous avez la permission d'accéder aux ressources, de sorte que les deux actions pas le même que lorsque le stade décrit.

Alors simple point, il est une combinaison des deux, est équivalent à un processus de visiteurs aux ressources du serveur web. Tout d' abord de tous les visiteurs doivent tenir un utilisateur de connexion, utilisé pour se connecter au serveur Web. Ce serveur Web puis fera face à détenteurs une liste des visiteurs. uniquement lorsque l'
utilisateur de connexion avec une liste des correspondances , l'utilisateur peut accéder au serveur Web. mais si vous souhaitez accéder à l'utilisateur de connexion des ressources doit être le niveau de privilège approprié. certains des documents confidentiels dont vous avez besoin d'appliquer pour obtenir approuver l'administrateur. ce processus est appelé autorisation.

A propos de l'authentification à l'appui de base en asp.net

services.AddAuthentication

méthode Configureservice peut être injecté à l' intérieur du middleware du IAuthenticationService. Le service d' authentification sera utilisé pour enregistrer le programme de gestionnaire d' authentification logique d'authentification correspondant. Ceux - ci sont appelés authentification des schémas de handelers enregistrés. Nous passons en commun Startup.ConfigureServicesde voir une telle configuration:

services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
    .AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, options => Configuration.Bind("JwtSettings", options))
    .AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options => Configuration.Bind("CookieSettings", options);

Ici, il y a des schémas multiples est enregistré quand il est venu pour l'authentification dans le dos, vous pouvez en fonction des besoins réels d'utiliser un autre schéma à authentifier est également très simple, comme l'utilisation de certification JWT d'un contrôleur ..:

[Authorize(AuthenticationSchemes = 
    JwtBearerDefaults.AuthenticationScheme)]
public class MixedController : Controller

Plus précisément se référer à la documentation Microsoft:

Avec un système autorise spécifique dans ASP.NET base

services.AddDefaultIdentity

Si le projet est un projet de base de asp.net MVC Web, et les utilisateurs individuels avec un modèle, nous pouvons voir ce comportement dans le startup.configureservice d'injection:

services.AddDbContext<ApplicationDbContext>(options =>
        options.UseSqlServer(
            Configuration.GetConnectionString("DefaultConnection")));
    services.AddDefaultIdentity<IdentityUser>(options => options.SignIn.RequireConfirmedAccount = true)
        .AddEntityFrameworkStores<ApplicationDbContext>();
    services.AddRazorPages();

Et en AddAuthenticationfait , il construit à l' AddDefaultIdentityintérieur. Donc , ne vont pas avec le temps supplémentaire.

app.UseAuthentication ();

De toute façon, le projet utilisera le service d'authentification est injecté, doivent être effectués en startup.configure en:

app.UseRouting()
app.UseAuthentication();
aspp.UseEndpoints();

Ajoutez à la conduite en réponse à la requête HTTP. Et arrangé l'ordre relatif ne peut pas être changé.

L'authentification à comprendre certains termes connexes

  • Schéma

vous ajoutez l' authentification basée généralement, ainsi que des options de configuration, allez à la demande de requête HTTP pour l' authentification. Ainsi AddJwtBearer, il est ajouté l' authentification JWT, AddCookieen fait, est d'ajouter une authentification par cookie.

  • Défi

Ici se réfère au processus de certification, tels que des liens vers des ressources les demandes des utilisateurs anonymes à l'accès ou cliquez limité. Service d'authentification sera certifiée selon le procédé respectif ou le schéma par défaut. En règle générale, l'authentification par cookie redirige l'utilisateur à l'écran de connexion. Authentification basée Jwt et renverra le code 401.

  • Interdire

Forbid se produit après l'authentification par la phase d'authentification, le service d'autorisation pour déterminer si l'utilisateur a accès à la ressource. Lorsque les utilisateurs sans accès aux ressources, l'authentification basée sur les cookies à ce stade redirigent l'utilisateur d'afficher un « utilisateur sans autorisation visitez la page. authentification basée sur JWT et renvoie un code 403.

Je suppose que tu aimes

Origine www.cnblogs.com/it-dennis/p/12486982.html
conseillé
Classement