Créer une API Web .NET Core avec l'authentification Windows
Introduction
Cet article vous guidera à travers la création d'une API Web .NET Core simple qui utilise l'authentification Windows pour sécuriser ses points de terminaison. L'authentification Windows permet aux utilisateurs de s'authentifier auprès de l'API en utilisant leurs identifiants Windows existants.
Configuration de l'application
-
Créer un projet API Web .NET Core:
- Ouvrez Visual Studio et créez un nouveau projet.
- Sélectionnez API Web (.NET Core) comme type de projet.
- Nommez votre projet (par exemple,
WindowsAuthApi
). - Choisissez .NET 6.0 (ou une version plus récente) comme framework cible.
- Cliquez sur Créer.
-
Installer les packages nécessaires:
- Ouvrez le fichier
Program.cs
et ajoutez les lignes suivantes pour installer le packageMicrosoft.AspNetCore.Authentication.Negotiate
:
builder.Services.AddAuthentication(NegotiateDefaults.AuthenticationScheme) .AddNegotiate();
- Ouvrez le fichier
-
Activer l'authentification Windows:
- Dans le fichier
Startup.cs
(ouProgram.cs
pour .NET 6 et versions ultérieures), ajoutez le code suivant à la méthodeConfigureServices
pour configurer l'authentification Windows:
public void ConfigureServices(IServiceCollection services) { services.AddAuthentication(NegotiateDefaults.AuthenticationScheme) .AddNegotiate(); // Autres services }
- Dans le fichier
-
Sécuriser les points de terminaison:
- Utilisez l'attribut
[Authorize]
pour sécuriser les points de terminaison de votre API. Par exemple:
[Authorize] [HttpGet] public string GetSecretData() { return "Données secrètes"; }
- Utilisez l'attribut
Exécution de l'application
-
Exécuter l'application:
- Appuyez sur F5 pour exécuter l'application.
-
Tester les points de terminaison:
- Ouvrez un navigateur Web et accédez à l'URL de votre API. Vous devriez être redirigé vers une page de connexion Windows.
- Saisissez vos identifiants Windows.
- Si l'authentification réussit, vous pourrez accéder aux points de terminaison sécurisés.
Conclusion
L'authentification Windows est une méthode simple et efficace pour sécuriser une API Web .NET Core. En utilisant l'authentification Windows, vous pouvez vous assurer que seuls les utilisateurs autorisés peuvent accéder aux données sensibles de votre API.