Разрешение пользователю ролей авторизации IIS из Web.config - PullRequest
0 голосов
/ 05 марта 2019

Я работаю над приложением 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... }

Я думаю о проверке только тех первых 4 букв, так как остальные являются случайными числами.Возможно ли это и как мне это сделать?

1 Ответ

0 голосов
/ 05 марта 2019

Это сложный вопрос, на который мне трудно ответить коротко.Но одна вещь наверняка, вы никогда не должны иметь никаких имен пользователей или паролей в коде silvelight, кроме косметики.Вы должны передать учетные данные на сервер / API и выполнить проверку там.В противном случае любому хакеру легко обойти вашу защиту.

Похоже, вы находитесь в домене Windows, вам не нужно собирать имя пользователя.Это уже передается в каждом запросе к серверу в маркере kerberos.Если вы включаете проверку подлинности Windows на сервере, вы можете выбрать здесь имя пользователя Thread.CurrentPrincipal.Identity.Name или подобное в зависимости от стека вашего API.

Существует еще одно сообщение SO, похожее на это: Каков наилучший способ аутентификации / авторизации в Silverlight?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...