using System;
using System.Collections.Generic;
using System.Security.Principal;
using System.Text;
using System.Linq;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Authorization;
using GreenTree.Strohrmann.ERP.Domain.Model;
using System.Security.Claims;
namespace GreenTree.Strohrmann.ERP.Services.Authorization
{
public class CookieAuthorizationService : IAuthorizationService
{
#region Implementation
///
/// Check wether the user has a specific policy
///
/// The user identity.
/// The policy to be checked.
public bool UserHasPolicy(IIdentity identity, string policy)
{
var claimsIdentity = identity as ClaimsIdentity;
if (claimsIdentity == null) return false;
return claimsIdentity.Claims
.Any(c => c.Type == "Policy" && c.Value == policy);
}
#endregion
}
}