gpt4 book ai didi

c# - 验证方法访问权限的最优雅方法是什么 (C#.Net)

转载 作者:行者123 更新时间:2023-11-30 12:49:45 25 4
gpt4 key购买 nike

我有一个内置于 WCF (C#.Net) 中的 WebService,其中包含许多方法。在每种方法上,我都不想验证当前用户是否有权访问此特定操作。

现在,我有这样的东西:

    public MyContract MyMethod(int MyParameter)
{
ValidateAccess(MyCurrentIdentityInfo, ActionEnum);

// Do stuff here...
}
public void MyMethod2(int MyParameter)
{
ValidateAccess(MyCurrentIdentityInfo, ActionEnum);

// Do stuff here...
}
etc...

您会注意到,我在开始时调用了一个方法来检查访问权限,然后执行我需要的代码。这段代码工作正常,但我必须在我的服务中的每个方法上调用这个方法,但我觉得它不太好。

是否有更优雅的方式来实现我想要做的事情?我尝试使用自定义属性但没有成功。

请注意,我并没有尝试在 WebService 本身上对用户进行身份验证。在上面的示例中,用户在 WebService 上是有效的。但是我想运行自定义代码来检查他是否可以调用删除记录的方法。

最佳答案

你可以考虑使用Castle Dynamic Proxy注入(inject)对登录用户的操作验证。

关于c# - 验证方法访问权限的最优雅方法是什么 (C#.Net),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10855336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com