Permission-based authorization utilizing Policies
This commit is contained in:
		| @ -2,6 +2,7 @@ | ||||
| @using Oqtane.Modules | ||||
| @using Oqtane.Services | ||||
| @using Oqtane.Shared | ||||
| @using Oqtane.Security | ||||
| @inherits ModuleBase | ||||
| @inject IUserService UserService | ||||
|  | ||||
| @ -70,19 +71,16 @@ | ||||
|                     authorized = true; | ||||
|                     break; | ||||
|                 case SecurityAccessLevel.View: | ||||
|                     authorized = UserService.IsAuthorized(PageState.User, ModuleState.ViewPermissions); | ||||
|                     authorized = UserSecurity.IsAuthorized(PageState.User, "View", ModuleState.Permissions); | ||||
|                     break; | ||||
|                 case SecurityAccessLevel.Edit: | ||||
|                     authorized = UserService.IsAuthorized(PageState.User, ModuleState.EditPermissions); | ||||
|                     authorized = UserSecurity.IsAuthorized(PageState.User, "Edit", ModuleState.Permissions); | ||||
|                     break; | ||||
|                 case SecurityAccessLevel.Admin: | ||||
|                     authorized = UserService.IsAuthorized(PageState.User, Constants.AdminRole); | ||||
|                     authorized = UserSecurity.IsAuthorized(PageState.User, "Edit", UserSecurity.SetPermissions("Edit", Constants.AdminRole)); | ||||
|                     break; | ||||
|                 case SecurityAccessLevel.Host: | ||||
|                     if (PageState.User != null) | ||||
|                     { | ||||
|                         authorized = PageState.User.IsSuperUser; | ||||
|                     } | ||||
|                     authorized = UserSecurity.IsAuthorized(PageState.User, "Edit", UserSecurity.SetPermissions("Edit", Constants.HostRole)); | ||||
|                     break; | ||||
|             } | ||||
|         } | ||||
|  | ||||
| @ -1,30 +1,22 @@ | ||||
| @using Oqtane.Modules | ||||
| @inherits ModuleBase | ||||
|  | ||||
| @if (authorized) | ||||
| @if (Message != "") | ||||
| { | ||||
|     <div class="@type"> | ||||
|         @Message | ||||
|     </div> | ||||
|     <div class="@type">@Message</div><br /><br /> | ||||
| } | ||||
|  | ||||
| @code { | ||||
|     [Parameter] | ||||
|     public MessageType Type { get; set; } | ||||
|  | ||||
|     [Parameter] | ||||
|     public string Message { get; set; } | ||||
|  | ||||
|     string type = "alert alert-success"; // optional | ||||
|     bool authorized = false; | ||||
|     [Parameter] | ||||
|     public MessageType Type { get; set; } | ||||
|  | ||||
|     string type = "alert alert-danger";  | ||||
|  | ||||
|     protected override void OnInitialized() | ||||
|     { | ||||
|         if (PageState.User != null) | ||||
|         { | ||||
|             authorized = PageState.User.IsSuperUser; | ||||
|         } | ||||
|  | ||||
|         switch (Type) | ||||
|         { | ||||
|             case MessageType.Success: | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Shaun Walker
					Shaun Walker