在 C# 中使用凭据进行访问控制

发布于 2024-11-25 21:27:46 字数 260 浏览 0 评论 0原文

我有一个 SOAP -> Web服务结构,使用C#。我打开了 IIS - windows 身份验证,因此我将 DefaultNetworkCredentials 添加到我的服务实例中的 ClientCredentials 中。我可以使用这些凭据访问 Web 服务。这不是问题。

我想限制对 Web 服务中包含的某些信息的访问,具体取决于尝试访问此服务的用户。我不知道如何通过将凭据作为参数传递或通过任何其他方式从凭据中获取任何用户信息。任何建议都会有帮助。

非常感谢!

I have a SOAP -> web service structure, using C#. I have IIS - windows authentication turned on so I am adding the DefaultNetworkCredentials to the ClientCredentials in my service instance. I am able to access the web service using these credentials. This is not the problem.

I would like to restrict access to certain information contained within the web service, depending on the user that is trying to access this service. I do not know how I can gain any user information from the Credentials by passing the Credentials as a parameter, or by any other means. Any suggestions would be helpful.

Thanks so much!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你另情深 2024-12-02 21:27:46

可以肯定的是,Windows 身份验证将确定他们是否可以访问 IIS 中的实际 .asmx 文件。

您还可以在 Web 服务代码中使用 HttpContext.Current.User 来确定当前登录的用户名(然后验证从那里执行操作的权限)。

Pretty sure the Windows authentication will determine if they can access the actual .asmx file in IIS.

You can use HttpContext.Current.User within your web service code to determine the currently logged on user's name as well (and then validate permission to perform action from there).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文