允许用户从Web.config获取IIS授权角色

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了允许用户从Web.config获取IIS授权角色相关的知识,希望对你有一定的参考价值。

我正在开发Silverlight / WPF应用程序,我正在尝试允许某些用户访问该网站。是否可以通过使用文本框输入用户名来允许用户?然后,将解析为IIS .NET授权规则以允许该特定用户访问。

例如,如果我输入用户名here.enter image description here

我想把它送到这里......

 <system.web>
<roleManager enabled="false" />
<compilation debug="true" targetFramework="4.0" />
<identity impersonate="true" />
<authentication mode="Windows" />
<authorization>
  <allow users="AX/Axxxxxx"/>

我猜我需要在xaml.cs文件中编写语法?需要在文本框中检查正确值的位置,然后单击“确定”按钮后继续完成自动化。

我可以这样做吗

if (UserNameBox.text.Contains("AXA") ) { do something... }

我想只检查前4个字母,因为其他字母是随机数字。这是可能的,我该怎么做呢?

答案

这是一个复杂的问题,我很难回答这个问题。但有一件事是肯定的,除了化妆品之外,你不应该在silvelight代码中进行任何用户名或密码检查。您应该将凭据传递给server / api并在那里进行检查。否则,任何黑客都很容易绕过你的保护。

由于您看起来像是在Windows域中,因此您不需要收集用户名。这已经在kerberos令牌中对服务器的每个请求中传递。如果您在服务器上打开Windows身份验证,则可以在此处获取用户名Thread.CurrentPrincipal.Identity.Name或类似名称,具体取决于您的api是什么堆栈。

还有另一个类似于此的SO帖子:What is the Best way for Authentication/Authorization in Silverlight?

以上是关于允许用户从Web.config获取IIS授权角色的主要内容,如果未能解决你的问题,请参考以下文章

asp.net web.config中基于多个角色的文件夹授权

我无法让页面从 cookie 加载用户角色

使用 web.config 允许服务器端包含在 HTML 文件 (IIS) 中

IIS7,web.config 只允许在网站的 /uploads 目录中使用静态文件处理程序

Spring Boot中基于​​角色的授权

在web.config文件中使用授权时将重定向回登录屏幕