public virtual async Task RemovePermissionAsync(TUser user, PermissionGrantInfo permissionGrant) { await _userPermissionSettingRepository.DeleteAsync( permissionSetting => permissionSetting.UserId == user.Id && permissionSetting.Name == permissionGrant.Name && permissionSetting.IsGranted == permissionGrant.IsGranted ); }
public virtual async Task <bool> HasPermissionAsync(TUser user, PermissionGrantInfo permissionGrant) { return(await _userPermissionSettingRepository.FirstOrDefaultAsync( p => p.UserId == user.Id && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted ) != null); }
/// <inheritdoc/> public virtual async Task <bool> HasPermissionAsync(int roleId, PermissionGrantInfo permissionGrant) { return(await _rolePermissionSettingRepository.FirstOrDefaultAsync( p => p.RoleId == roleId && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted ) != null); }
public virtual bool HasPermission(long userId, PermissionGrantInfo permissionGrant) { return(_userPermissionSettingRepository.FirstOrDefault( p => p.UserId == userId && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted ) != null); }
public virtual void RemovePermission(TUser user, PermissionGrantInfo permissionGrant) { _userPermissionSettingRepository.Delete( permissionSetting => permissionSetting.UserId == user.Id && permissionSetting.Name == permissionGrant.Name && permissionSetting.IsGranted == permissionGrant.IsGranted ); }
public async Task <bool> HasPermissionAsync(long userId, PermissionGrantInfo permissionGrant) { return(await _userPermissionRepository.FirstOrDefaultAsync( p => p.UserId == userId && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted ) != null); }
/// <inheritdoc/> public virtual async Task RemovePermissionAsync(TRole role, PermissionGrantInfo permissionGrant) { await _rolePermissionSettingRepository.DeleteAsync( permissionSetting => permissionSetting.RoleId == role.Id && permissionSetting.Name == permissionGrant.Name && permissionSetting.IsGranted == permissionGrant.IsGranted ); }
private object[] SetParameter(ParameterInfo[] paremeters, PermissionGrantInfo permission) { object[] objlist = new object[paremeters.Length]; for (int i = 0; i < paremeters.Length; i++) { objlist[i] = paremeters[i].DefaultValue; } objlist[0] = permission.Name; return(objlist); }
public virtual bool HasPermission(long userId, PermissionGrantInfo permissionGrant) { return(_unitOfWorkManager.WithUnitOfWork(() => { return _userPermissionSettingRepository.FirstOrDefault( p => p.UserId == userId && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted ) != null; })); }
public virtual async Task <bool> HasPermissionAsync(long userId, PermissionGrantInfo permissionGrant) { return(await _unitOfWorkManager.WithUnitOfWorkAsync(async() => { return await _userPermissionSettingRepository.FirstOrDefaultAsync( p => p.UserId == userId && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted ) != null; })); }
public override async Task <PermissionGrantInfo> CheckAsync(string name, string providerName, string providerKey) { if (providerName == Name) { var permissionGrant = await PermissionGrantRepository.FindAsync(name, providerName, providerKey); return(new PermissionGrantInfo( permissionGrant != null, permissionGrant?.ProviderScope ?? nameof(PermissionScopeType.Prohibited), providerKey )); } var permissionGrantResult = PermissionGrantInfo.NonGranted; if (providerName == UserPermissionValueProvider.ProviderName) { var userId = Guid.Parse(providerKey); var roles = await UserRoleFinder.GetRolesAsync(userId); foreach (var role in roles) { var result = await PermissionGrantRepository.FindAsync(name, Name, role); if (result == null) { continue; } // 以角色的最大权限为主 var permissionGrantScope = PermissionScopeType.Prohibited; if (Enum.TryParse(permissionGrantResult.ProviderScope, out PermissionScopeType ps)) { permissionGrantScope = ps; } var resultScope = PermissionScopeType.Prohibited; if (Enum.TryParse(result.ProviderScope, out PermissionScopeType rs)) { resultScope = rs; } if (resultScope > permissionGrantScope) { permissionGrantResult = new PermissionGrantInfo(true, result.ProviderScope, role); } } } return(permissionGrantResult); }
/// <inheritdoc/> public virtual async Task AddPermissionAsync(TRole role, PermissionGrantInfo permissionGrant) { if (await HasPermissionAsync(role.Id, permissionGrant)) { return; } await _rolePermissionSettingRepository.InsertAsync( new RolePermissionSetting { RoleId = role.Id, Name = permissionGrant.Name, IsGranted = permissionGrant.IsGranted }); }
public virtual async Task AddPermissionAsync(TUser user, PermissionGrantInfo permissionGrant) { if (await HasPermissionAsync(user, permissionGrant)) { return; } await _userPermissionSettingRepository.InsertAsync( new UserPermissionSetting { UserId = user.Id, Name = permissionGrant.Name, IsGranted = permissionGrant.IsGranted }); }
public Task RemovePermissionAsync(AbpRole role, PermissionGrantInfo permissionGrant) { return(Task.Factory.StartNew(() => { var permissionEntity = _permissionSettingRepository.FirstOrDefault( p => p.RoleId == role.Id && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted); if (permissionEntity == null) { return; } _permissionSettingRepository.Delete(permissionEntity); })); }
public virtual void AddPermission(TUser user, PermissionGrantInfo permissionGrant) { if (HasPermission(user.Id, permissionGrant)) { return; } _userPermissionSettingRepository.Insert( new UserPermissionSetting { TenantId = user.TenantId, UserId = user.Id, Name = permissionGrant.Name, IsGranted = permissionGrant.IsGranted }); }
public Task AddPermissionAsync(AbpRole role, PermissionGrantInfo permissionGrant) { return(Task.Factory.StartNew(() => { if (HasPermissionAsync(role, permissionGrant).Result) //TODO: async/await? { return; } _permissionSettingRepository.Insert( new PermissionSetting { RoleId = role.Id, Name = permissionGrant.Name, IsGranted = permissionGrant.IsGranted }); })); }
public virtual async Task AddPermissionAsync(TRole role, PermissionGrantInfo permissionGrant) { await _unitOfWorkManager.WithUnitOfWorkAsync(async() => { if (await HasPermissionAsync(role.Id, permissionGrant)) { return; } await _rolePermissionSettingRepository.InsertAsync( new RolePermissionSetting { TenantId = role.TenantId, RoleId = role.Id, Name = permissionGrant.Name, IsGranted = permissionGrant.IsGranted }); }); }
public virtual async Task AddPermissionAsync(TUser user, PermissionGrantInfo permissionGrant) { await _unitOfWorkManager.WithUnitOfWorkAsync(async() => { if (await HasPermissionAsync(user.Id, permissionGrant)) { return; } await _userPermissionSettingRepository.InsertAsync( new UserPermissionSetting { TenantId = user.TenantId, UserId = user.Id, Name = permissionGrant.Name, IsGranted = permissionGrant.IsGranted } ); }); }
public Task <bool> HasPermissionAsync(AbpRole role, PermissionGrantInfo permissionGrant) { return(Task.Factory.StartNew(() => _permissionSettingRepository.FirstOrDefault(p => p.RoleId == role.Id && p.Name == permissionGrant.Name && p.IsGranted == permissionGrant.IsGranted) != null)); }