34 lines
1.0 KiB
C#
34 lines
1.0 KiB
C#
using Microsoft.AspNetCore.Authorization;
|
|
using System;
|
|
|
|
namespace gehGassi.Web.Auth.Requirements
|
|
{
|
|
/// <summary>
|
|
/// Requirement für die Prüfung ob ein Request einen bestimmten Header beinhaltet
|
|
/// </summary>
|
|
public class HasHeaderRequirement : IAuthorizationRequirement
|
|
{
|
|
/// <summary>
|
|
/// Name des Headers
|
|
/// </summary>
|
|
public string HeaderName { get; }
|
|
|
|
/// <summary>
|
|
/// Wert den der Header haben muss
|
|
/// </summary>
|
|
public string HeaderValue { get; }
|
|
|
|
/// <summary>
|
|
/// Erstellt eine Instanz
|
|
/// </summary>
|
|
/// <param name="headerName">Name des Headers</param>
|
|
/// <param name="headerValue">Wert den der Header haben muss</param>
|
|
/// <exception cref="ArgumentException"></exception>
|
|
public HasHeaderRequirement(string headerName, string headerValue)
|
|
{
|
|
HeaderName = headerName ?? throw new ArgumentException(nameof(headerName));
|
|
HeaderValue = headerValue;
|
|
}
|
|
}
|
|
}
|