최신 분산 애플리케이션에는 양식이나 Windows 인증과 같은 기존 ASP.NET 웹 API 방법보다 더 강력한 인증이 필요한 경우가 많습니다. 이 가이드에서는 IIS에서 호스팅되는 웹 API에서 JWT 전달자 토큰 인증을 구현하는 방법을 자세히 설명합니다.
1. 토큰 생성
JWT 토큰은 헤더, 클레임, 서명으로 구성됩니다. System.IdentityModel.Tokens.Jwt
NuGet 패키지는 대칭 키가 있는 HMACSHA256을 사용하여 토큰 생성을 용이하게 합니다.
public static string GenerateToken(string username, int expireMinutes = 20) { var symmetricKey = Convert.FromBase64String(Secret); var tokenHandler = new JwtSecurityTokenHandler(); ... return token; }
2. 토큰 검증
토큰 검증은 다음을 사용하여 수행됩니다.
private static bool ValidateToken(string token, out string username) { ... }
이는 사용자 정의 인증 필터 속성의 핵심을 형성합니다.
public class JwtAuthenticationAttribute : Attribute, IAuthenticationFilter { ... }
3. 인증요청
인증이 필요한 작업이나 경로에는 JwtAuthenticationAttribute
을 적용하세요. 필터는 JWT의 유효성을 검사하고 ClaimsPrincipal
(또는 실패 시 null)을 제공합니다.
4. 승인
AuthorizeAttribute
을 전 세계적으로 사용하여 익명 액세스를 제한하세요. 보안 작업 내에서 ClaimsPrincipal
.
이 방법을 사용하면 OWIN 미들웨어 없이 IIS에서 호스팅되는 ASP.NET 웹 API에서 JWT 전달자 토큰 인증을 활성화하여 웹 서비스에 대한 안전하고 확장 가능한 인증을 제공할 수 있습니다.
위 내용은 IIS의 ASP.NET 웹 API에서 JWT 전달자 토큰 인증을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!