2
0

AuthService.cs 855 B

123456789101112131415161718192021222324252627282930
  1. #pragma warning disable CS1591
  2. using Jellyfin.Data.Enums;
  3. using MediaBrowser.Controller.Net;
  4. using Microsoft.AspNetCore.Http;
  5. namespace Emby.Server.Implementations.HttpServer.Security
  6. {
  7. public class AuthService : IAuthService
  8. {
  9. private readonly IAuthorizationContext _authorizationContext;
  10. public AuthService(
  11. IAuthorizationContext authorizationContext)
  12. {
  13. _authorizationContext = authorizationContext;
  14. }
  15. public AuthorizationInfo Authenticate(HttpRequest request)
  16. {
  17. var auth = _authorizationContext.GetAuthorizationInfo(request);
  18. if (auth.User?.HasPermission(PermissionKind.IsDisabled) ?? false)
  19. {
  20. throw new SecurityException("User account has been disabled.");
  21. }
  22. return auth;
  23. }
  24. }
  25. }