Pour obtenir la réponse, j'ai construit la version de l'API sans authentification et la version avec, puis j'ai fait une différence sur les dossiers générés (et j'ai ignoré le bloc de code supplémentaire dans appsettings.json qui apparaît lorsque vous utilisez l'option cloud-auth).
Il s'avère que l'activation de l'authentification ne nécessite que quelques lignes de code.
Si vous apportez les modifications suivantes à une version sans authentification du modèle d'API, vous disposerez d'une version avec authentification :
Sur Startup.cs , ajoutez : using Microsoft.AspNetCore.Authentication;
dans la section "utilisation". Ajoutez aussi : app.UseAuthentication();
juste avant app.UseMvc();
comme indiqué ci-dessous :
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseAuthentication();
app.UseMvc();
}
Sur Contrôleurs \ValuesController.cs , ajoutez : using Microsoft.AspNetCore.Authorization;
dans la section "utilisation". Ajoutez aussi : [Authorize]
immédiatement au-dessus [Route("api/[controller]")]
C'est tout ce dont vous avez besoin pour ajouter l'authentification par modèle au modèle API vanille. Bien sûr, vous devrez ajouter le code d'authentification proprement dit, mais au niveau du modèle, vous avez terminé.
(Note annexe : Microsoft a également supposé dans la version Auth que vous utiliserez UserSecretsId, donc si vous le souhaitez également, il suffit de cliquer avec le bouton droit de la souris sur la solution et de sélectionner Manage User Secrets).
0 votes
J'aimerais bien connaître la réponse à cette question. Sur le Mac, c'est encore pire : vous n'avez même pas la possibilité de créer des comptes d'utilisateurs individuels.