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

时间:2019-03-05 08:05:02

标签: c# wpf iis silverlight authorization

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

例如,如果我在此处输入用户名。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("AX\A") ) { do something... }

我正在考虑只检查前四个字母,因为其他四个都是随机数。 这可能吗,我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

这是一个复杂的问题,我很难简短地回答。但是可以肯定的是,除了化妆品,您永远不应在silvelight代码中进行任何用户名或密码检查。您应该将凭据传递到服务器/ api,并在那里进行检查。否则,任何黑客都很容易绕过您的保护。

由于您似乎在Windows域中,因此您实际上不需要收集用户名。这已在每个请求中以kerberos令牌传递给服务器。如果您在服务器上打开Windows身份验证,则可以根据api的堆栈在此处选择Thread.CurrentPrincipal.Identity.Name或类似名称的用户名。

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