1

TL; DR - comment ajouter l'authentification à un projet web par défaut core 2 api qui a été démarré sans auth.ajouter google authentication à ** existant **. Net core 2 web api projet

Détails - J'ai un projet web .net core 2 api existant sans authentification configuré et j'utilise core infrastructure core.

Il a été ouvert comme -

PIC 1 - Non Auth sélectionné

No Auth Selected

Je voudrais ajouter une authentification Google à mon projet existant comme si elle était ouverte avec

PIC 2 - Comptes d'utilisateurs individuels sélectionnés

Individual User Accounts Selected

mais je ne peux trouver aucune ressource en ce qui concerne l'ajout de ces capacités + échafaudages et les migrations - tout ce que je peux trouver sont des liens en ce qui concerne la mise à niveau de v1 de base à 2.

des idées?

merci!

+1

Désolé, je ne suis pas. Mise à jour quoi? Le lien Google vous montre comment ajouter Google Auth à une application de base asp.net. Pouvez-vous essayer de mettre à jour votre question? Cordialement. – spottedmahn

+0

hey! Je vous remercie ! mis à jour - espérons que c'est plus clair. Fondamentalement, j'ai commencé avec le modèle par défaut (sans authentification) et maintenant je voudrais ajouter google auth à mon projet sans avoir à copier tout mon travail à un nouveau .. – JanivZ

+0

Avez-vous déjà compris? J'ai vraiment du mal à obtenir le mien de travail et tant d'exemples utilisent le modèle MVC, je veux juste l'API. – nicV

Répondre

3

Ajouter paquets

Microsoft.AspNetCore.Identity 
Microsoft.AspNetCore.Identity.EntityFrameworkCore 
Microsoft.AspNetCore.Authentication.Google 

Puis, en démarrage:

public void ConfigureServices(IServiceCollection services) 
{ 
    services.AddIdentity<IdentityUser, IdentityRole>(); 
    services.AddAuthentication(
      v => { 
       v.DefaultAuthenticateScheme = GoogleDefaults.AuthenticationScheme; 
       v.DefaultChallengeScheme = GoogleDefaults.AuthenticationScheme; 
      }).AddGoogle(googleOptions => 
      { 
       googleOptions.ClientId = "CLIENT ID"; 
       googleOptions.ClientSecret = "CLIENT SECRET"; 
      }); 
    services.AddMvc(); 
} 

public void Configure(IApplicationBuilder app, IHostingEnvironment env) 
{ 
    app.UseAuthentication() 
     .UseMvc(); 
} 

Un exemple de travail minimal ici: https://github.com/mjrmua/Asp.net-Core-2.0-google-authentication-example