Exemple #1
0
        public static void AddGraphQlAuth(this IServiceCollection services)
        {
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddSingleton <IAuthorizationEvaluator, AuthorizationEvaluator>();
            services.AddTransient <AuthorizationValidationRule>();
            services.AddSingleton(s =>
            {
                var authSettings = new AuthorizationSettings();

                authSettings.AddPolicy(AuthorizationConstants.GraphQlAdminPolicy, _ => _.RequireClaim(ClaimTypes.Role, AuthorizationConstants.AdminRole));

                return(authSettings);
            });
            services.AddSingleton <IEnumerable <IValidationRule> >(s =>
            {
                List <IValidationRule> validationRules        = DocumentValidator.CoreRules();
                AuthorizationValidationRule authorizationRule = s.GetRequiredService <AuthorizationValidationRule>();
                validationRules.Add(authorizationRule);
                return(validationRules);
            });
        }
Exemple #2
0
 public ValidationTestBase()
 {
     Settings = new AuthorizationSettings();
     Rule     = new AuthorizationValidationRule(new AuthorizationEvaluator(Settings), new DefaultContextAccessor());
 }
 public ValidationTestBase()
 {
     Settings = new AuthorizationSettings();
     Rule     = new AuthorizationValidationRule(new AuthorizationEvaluator(Settings));
 }
Exemple #4
0
 protected void ConfigureAuthorizationOptions(Action <AuthorizationOptions> setupOptions)
 {
     var(authorizationService, httpContextAccessor) = BuildServices(setupOptions);
     HttpContext = httpContextAccessor.HttpContext;
     Rule        = new AuthorizationValidationRule(authorizationService, httpContextAccessor);
 }
 protected void ConfigureAuthorizationOptions(Action <AuthorizationOptions> setupOptions)
 {
     var(authorizationService, httpContextAccessor) = BuildServices(setupOptions);
     HttpContext = httpContextAccessor.HttpContext;
     Rule        = new AuthorizationValidationRule(authorizationService, new DefaultClaimsPrincipalAccessor(httpContextAccessor), new DefaultAuthorizationErrorMessageBuilder());
 }