ASP.NET Core 2.2中的条件用户角色

ASP.NET Core 2.2中的条件用户角色,asp.net,conditional-statements,core,roles,Asp.net,Conditional Statements,Core,Roles,我正在创建一个问题跟踪系统ASP.NET Core 2.2 web应用程序,用于跟踪和管理具有以下用户角色的项目创建:匿名网站访问者、登录用户、管理员、项目负责人和问题受让人。登录用户可以是某些项目的项目负责人,同时也可以是其他项目中某些问题的问题受让人 我如何实施用户角色管理,以便ProjectController中的项目负责人和IssueController中的问题受让人的具体操作只能由分配给他们的用户访问? 提前谢谢 您描述的问题与安全性的角色方法无关(因此与ASP.NET核心无关)。在这

我正在创建一个问题跟踪系统ASP.NET Core 2.2 web应用程序,用于跟踪和管理具有以下用户角色的项目创建:匿名网站访问者、登录用户、管理员、项目负责人和问题受让人。登录用户可以是某些项目的项目负责人,同时也可以是其他项目中某些问题的问题受让人

我如何实施用户角色管理,以便ProjectController中的项目负责人和IssueController中的问题受让人的具体操作只能由分配给他们的用户访问?
提前谢谢

您描述的问题与安全性的角色方法无关(因此与ASP.NET核心无关)。在这里使用它不能满足您的需求,因为您需要基于“每个实例”的安全性,即控制哪些用户可以对每个不同的项目和每个不同的问题执行某些操作,因此每个用户的角色根据上下文而不同

因此,我的建议是在项目类上创建一个名为LeaderID的新属性,该属性将维护作为领导者的用户的ID,然后在您想要的每个控制器操作中检查与当前用户的等效性

这个问题的案例有点难。如果一个问题只有一个问题asignee,那么情况与上面相同,只需将名为AsigneId的属性添加到问题类中即可。如果没有,则必须创建一个新的表/实体,以多对多的方式保存每个问题的所有受让人


祝你好运

您描述的问题与安全性的角色方法无关(因此与ASP.NET核心无关)。在这里使用它不能满足您的需求,因为您需要基于“每个实例”的安全性,即控制哪些用户可以对每个不同的项目和每个不同的问题执行某些操作,因此每个用户的角色根据上下文而不同

因此,我的建议是在项目类上创建一个名为LeaderID的新属性,该属性将维护作为领导者的用户的ID,然后在您想要的每个控制器操作中检查与当前用户的等效性

这个问题的案例有点难。如果一个问题只有一个问题asignee,那么情况与上面相同,只需将名为AsigneId的属性添加到问题类中即可。如果没有,则必须创建一个新的表/实体,以多对多的方式保存每个问题的所有受让人


祝你好运

谢谢你的推荐-我会采取这种方法谢谢你的推荐-我会采取这种方法