From f5bb5d0716f772ba44251f6b112ecdf8aba01b8f Mon Sep 17 00:00:00 2001 From: Abdullah Atta Date: Fri, 7 Jun 2024 15:39:49 +0500 Subject: [PATCH] api: remove unnecessary auth policies --- .../Authorization/EmailVerifiedRequirement.cs | 36 ------------------- Notesnook.API/Startup.cs | 12 +------ 2 files changed, 1 insertion(+), 47 deletions(-) delete mode 100644 Notesnook.API/Authorization/EmailVerifiedRequirement.cs diff --git a/Notesnook.API/Authorization/EmailVerifiedRequirement.cs b/Notesnook.API/Authorization/EmailVerifiedRequirement.cs deleted file mode 100644 index 279187a..0000000 --- a/Notesnook.API/Authorization/EmailVerifiedRequirement.cs +++ /dev/null @@ -1,36 +0,0 @@ -/* -This file is part of the Notesnook Sync Server project (https://notesnook.com/) - -Copyright (C) 2023 Streetwriters (Private) Limited - -This program is free software: you can redistribute it and/or modify -it under the terms of the Affero GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -Affero GNU General Public License for more details. - -You should have received a copy of the Affero GNU General Public License -along with this program. If not, see . -*/ - -using System.Threading.Tasks; -using Microsoft.AspNetCore.Authorization; - -namespace Notesnook.API.Authorization -{ - public class EmailVerifiedRequirement : AuthorizationHandler, IAuthorizationRequirement - { - protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, EmailVerifiedRequirement requirement) - { - var isEmailVerified = context.User.HasClaim("verified", "true"); - var isUserBasic = context.User.HasClaim("notesnook:status", "basic") || context.User.HasClaim("notesnook:status", "premium_expired"); - if (!isUserBasic || isEmailVerified) - context.Succeed(requirement); - return Task.CompletedTask; - } - } -} \ No newline at end of file diff --git a/Notesnook.API/Startup.cs b/Notesnook.API/Startup.cs index 68721fa..3bcc7b0 100644 --- a/Notesnook.API/Startup.cs +++ b/Notesnook.API/Startup.cs @@ -107,23 +107,13 @@ namespace Notesnook.API policy.RequireAuthenticatedUser(); policy.Requirements.Add(new SyncRequirement()); }); - options.AddPolicy("Verified", policy => - { - policy.AuthenticationSchemes.Add("introspection"); - policy.RequireAuthenticatedUser(); - policy.Requirements.Add(new EmailVerifiedRequirement()); - }); options.AddPolicy("Pro", policy => { policy.AuthenticationSchemes.Add("introspection"); policy.RequireAuthenticatedUser(); + policy.Requirements.Add(new SyncRequirement()); policy.Requirements.Add(new ProUserRequirement()); }); - options.AddPolicy("BasicAdmin", policy => - { - policy.AuthenticationSchemes.Add("BasicAuthentication"); - policy.RequireClaim(ClaimTypes.Role, "Admin"); - }); options.DefaultPolicy = options.GetPolicy("Notesnook"); }).AddSingleton(); ;