#269 removing some unused code
This commit is contained in:
parent
8bc06f1547
commit
a86bc20d22
@ -1,26 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RBilling.Models.Tenant.Db
|
||||
{
|
||||
/// <summary>
|
||||
/// Chargable Feature For Tenant Type
|
||||
/// </summary>
|
||||
public enum RChargableFeatureType
|
||||
{
|
||||
/// <summary>
|
||||
/// yes/no
|
||||
/// </summary>
|
||||
Boolean = 0,
|
||||
/// <summary>
|
||||
/// 0, ...
|
||||
/// </summary>
|
||||
RegularNumber = 1,
|
||||
/// <summary>
|
||||
/// 1.222 or large numbers
|
||||
/// </summary>
|
||||
FloatNumber
|
||||
}
|
||||
}
|
||||
@ -1,92 +0,0 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using RSecurityBackend.Models.Generic;
|
||||
using RSecurityBackend.Services;
|
||||
|
||||
|
||||
namespace RSecurityBackend.Controllers
|
||||
{
|
||||
/// <summary>
|
||||
/// base class for controllers needing UserScopeCheck
|
||||
/// </summary>
|
||||
public abstract class UserScopeCheckEnabledControllerBase : Controller
|
||||
{
|
||||
/// <summary>
|
||||
/// UserScopeCheck method EntityShortName;
|
||||
/// </summary>
|
||||
/// <example>
|
||||
/// RBillingSecurableItem.TenantEntityShortName
|
||||
/// </example>
|
||||
protected abstract string UserScopeCheckEntityShortName { get; }
|
||||
|
||||
/// <summary>
|
||||
/// UserScopeCheck method OperationShortName
|
||||
/// </summary>
|
||||
/// <example>
|
||||
/// SecurableItem.ViewOperationShortName
|
||||
/// </example>
|
||||
protected abstract string UserScopeCheckOperationShortName { get; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// returns user id if user is a guest, and empty if he/she has access to view all users information
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
protected async Task<RServiceResult<Guid>> GetUserIdUnlessUserHavePermissionToReadAllUsersDataWhichReturnEmptyUserId()
|
||||
{
|
||||
Guid userId = new Guid(User.Claims.FirstOrDefault(c => c.Type == "UserId").Value);
|
||||
|
||||
RServiceResult<bool> canReadAllUsersData =
|
||||
await _userPermissionChecker.Check
|
||||
(
|
||||
userId,
|
||||
new Guid(User.Claims.FirstOrDefault(c => c.Type == "SessionId").Value),
|
||||
UserScopeCheckEntityShortName,
|
||||
UserScopeCheckOperationShortName
|
||||
|
||||
);
|
||||
|
||||
if (!string.IsNullOrEmpty(canReadAllUsersData.ExceptionString))
|
||||
return new RServiceResult<Guid>(userId, canReadAllUsersData.ExceptionString);
|
||||
if (canReadAllUsersData.Result)
|
||||
{
|
||||
userId = Guid.Empty;
|
||||
}
|
||||
return new RServiceResult<Guid>(userId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// can current user read this userId daya
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
/// <returns></returns>
|
||||
protected async Task<RServiceResult<bool>> CanReadUserData(Guid userId)
|
||||
{
|
||||
RServiceResult<Guid> scopeForUserId = await GetUserIdUnlessUserHavePermissionToReadAllUsersDataWhichReturnEmptyUserId();
|
||||
if(!string.IsNullOrEmpty(scopeForUserId.ExceptionString))
|
||||
{
|
||||
return new RServiceResult<bool>(false, scopeForUserId.ExceptionString);
|
||||
}
|
||||
return new RServiceResult<bool>(scopeForUserId.Result == Guid.Empty || scopeForUserId.Result == userId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Permission Checker Service
|
||||
/// </summary>
|
||||
protected readonly IUserPermissionChecker _userPermissionChecker;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// constructor
|
||||
/// </summary>
|
||||
/// <param name="userPermissionChecker"></param>
|
||||
public UserScopeCheckEnabledControllerBase(IUserPermissionChecker userPermissionChecker)
|
||||
{
|
||||
_userPermissionChecker = userPermissionChecker;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@ -625,51 +625,6 @@
|
||||
</summary>
|
||||
<param name="roleService"></param>
|
||||
</member>
|
||||
<member name="T:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase">
|
||||
<summary>
|
||||
base class for controllers needing UserScopeCheck
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase.UserScopeCheckEntityShortName">
|
||||
<summary>
|
||||
UserScopeCheck method EntityShortName;
|
||||
</summary>
|
||||
<example>
|
||||
RBillingSecurableItem.TenantEntityShortName
|
||||
</example>
|
||||
</member>
|
||||
<member name="P:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase.UserScopeCheckOperationShortName">
|
||||
<summary>
|
||||
UserScopeCheck method OperationShortName
|
||||
</summary>
|
||||
<example>
|
||||
SecurableItem.ViewOperationShortName
|
||||
</example>
|
||||
</member>
|
||||
<member name="M:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase.GetUserIdUnlessUserHavePermissionToReadAllUsersDataWhichReturnEmptyUserId">
|
||||
<summary>
|
||||
returns user id if user is a guest, and empty if he/she has access to view all users information
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase.CanReadUserData(System.Guid)">
|
||||
<summary>
|
||||
can current user read this userId daya
|
||||
</summary>
|
||||
<param name="userId"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="F:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase._userPermissionChecker">
|
||||
<summary>
|
||||
Permission Checker Service
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:RSecurityBackend.Controllers.UserScopeCheckEnabledControllerBase.#ctor(RSecurityBackend.Services.IUserPermissionChecker)">
|
||||
<summary>
|
||||
constructor
|
||||
</summary>
|
||||
<param name="userPermissionChecker"></param>
|
||||
</member>
|
||||
<member name="T:RSecurityBackend.DbContext.RSecurityDbContext`3">
|
||||
<summary>
|
||||
Security EF DbContext
|
||||
@ -3953,25 +3908,5 @@
|
||||
<param name="uniqueChars"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="T:RBilling.Models.Tenant.Db.RChargableFeatureType">
|
||||
<summary>
|
||||
Chargable Feature For Tenant Type
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:RBilling.Models.Tenant.Db.RChargableFeatureType.Boolean">
|
||||
<summary>
|
||||
yes/no
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:RBilling.Models.Tenant.Db.RChargableFeatureType.RegularNumber">
|
||||
<summary>
|
||||
0, ...
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:RBilling.Models.Tenant.Db.RChargableFeatureType.FloatNumber">
|
||||
<summary>
|
||||
1.222 or large numbers
|
||||
</summary>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user