Browse Source

Rollback #952 partially

pull/992/head
Halil ibrahim Kalkan 8 years ago
parent
commit
f3be110508
  1. 10
      framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/ClientPermissionValueProvider.cs
  2. 9
      framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/RolePermissionValueProvider.cs
  3. 9
      framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/UserPermissionValueProvider.cs

10
framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/ClientPermissionValueProvider.cs

@ -1,25 +1,23 @@
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Clients; using Volo.Abp.Security.Claims;
namespace Volo.Abp.Authorization.Permissions namespace Volo.Abp.Authorization.Permissions
{ {
public class ClientPermissionValueProvider : PermissionValueProvider public class ClientPermissionValueProvider : PermissionValueProvider
{ {
protected ICurrentClient CurrentClient { get; }
public const string ProviderName = "Client"; public const string ProviderName = "Client";
public override string Name => ProviderName; public override string Name => ProviderName;
public ClientPermissionValueProvider(ICurrentClient currentClient, IPermissionStore permissionStore) public ClientPermissionValueProvider(IPermissionStore permissionStore)
: base(permissionStore) : base(permissionStore)
{ {
CurrentClient = currentClient;
} }
public override async Task<PermissionGrantResult> CheckAsync(PermissionValueCheckContext context) public override async Task<PermissionGrantResult> CheckAsync(PermissionValueCheckContext context)
{ {
var clientId = CurrentClient.Id; var clientId = context.Principal?.FindFirst(AbpClaimTypes.ClientId)?.Value;
if (clientId == null) if (clientId == null)
{ {

9
framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/RolePermissionValueProvider.cs

@ -1,27 +1,24 @@
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Security.Claims; using Volo.Abp.Security.Claims;
using Volo.Abp.Users;
namespace Volo.Abp.Authorization.Permissions namespace Volo.Abp.Authorization.Permissions
{ {
public class RolePermissionValueProvider : PermissionValueProvider public class RolePermissionValueProvider : PermissionValueProvider
{ {
protected ICurrentUser CurrentUser { get; }
public const string ProviderName = "Role"; public const string ProviderName = "Role";
public override string Name => ProviderName; public override string Name => ProviderName;
public RolePermissionValueProvider(ICurrentUser currentUser, IPermissionStore permissionStore) public RolePermissionValueProvider(IPermissionStore permissionStore)
: base(permissionStore) : base(permissionStore)
{ {
CurrentUser = currentUser;
} }
public override async Task<PermissionGrantResult> CheckAsync(PermissionValueCheckContext context) public override async Task<PermissionGrantResult> CheckAsync(PermissionValueCheckContext context)
{ {
var roles = CurrentUser.Roles; var roles = context.Principal?.FindAll(AbpClaimTypes.Role).Select(c => c.Value).ToArray();
if (roles == null || !roles.Any()) if (roles == null || !roles.Any())
{ {

9
framework/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/UserPermissionValueProvider.cs

@ -1,26 +1,23 @@
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Security.Claims; using Volo.Abp.Security.Claims;
using Volo.Abp.Users;
namespace Volo.Abp.Authorization.Permissions namespace Volo.Abp.Authorization.Permissions
{ {
public class UserPermissionValueProvider : PermissionValueProvider public class UserPermissionValueProvider : PermissionValueProvider
{ {
protected ICurrentUser CurrentUser { get; }
public const string ProviderName = "User"; public const string ProviderName = "User";
public override string Name => ProviderName; public override string Name => ProviderName;
public UserPermissionValueProvider(ICurrentUser currentUser, IPermissionStore permissionStore) public UserPermissionValueProvider(IPermissionStore permissionStore)
: base(permissionStore) : base(permissionStore)
{ {
CurrentUser = currentUser;
} }
public override async Task<PermissionGrantResult> CheckAsync(PermissionValueCheckContext context) public override async Task<PermissionGrantResult> CheckAsync(PermissionValueCheckContext context)
{ {
var userId = CurrentUser.Id?.ToString(); var userId = context.Principal?.FindFirst(AbpClaimTypes.UserId)?.Value;
if (userId == null) if (userId == null)
{ {

Loading…
Cancel
Save