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

问题描述 投票:0回答:1

我正在开发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("AX\A") ) { do something... }

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

c# wpf iis silverlight authorization
1个回答
0
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.