Как я использую Дополнительные Параметры в Контроллере MVC ASP.NET

К сожалению, нет никакого "простого" способа проверить пользовательские учетные данные на AD.

С каждой методикой, представленной до сих пор, можно получить ложно-отрицательное: creds пользователя будет допустим, однако AD возвратит false при определенных обстоятельствах:

  • Пользователь обязан Пароль Изменения при Следующем Входе в систему.
  • пароль Пользователя истек.

ActiveDirectory не позволит Вам использовать LDAP, чтобы определить, недопустим ли пароль вследствие того, что пользователь должен изменить пароль или если их пароль истек.

Для определения изменения пароля или пароля истек, можно назвать Win32:LogonUser () и проверить код ошибки окон на следующие 2 константы:

  • ERROR_PASSWORD_MUST_CHANGE = 1907
  • ERROR_PASSWORD_EXPIRED = 1330
41
задан ivanjonas 17 March 2016 в 15:20
поделиться

1 ответ

Строка должна быть в порядке, так как она будет передана как пустая строка. Для int сделайте его допускающим значение NULL:

public ActionResult Index(string Country, int? Regions)

Также вы заметите, что я использовал его с заглавной буквы, как и ваша строка запроса.

Edit

Обратите внимание, что ASP.NET теперь позволяет вам определять параметры по умолчанию. Например:

public ActionResult Index(string Country, int Regions = 2)

Однако, ИМХО, я бы порекомендовал вам использовать значение по умолчанию только там, где это имеет семантический смысл. Например, если целью параметра Regions было установить количество регионов в стране, а в большинстве стран есть 2 региона (северный и южный), то установка значения по умолчанию имеет смысл. Я бы не стал использовать «магическое число», обозначающее отсутствие ввода (например, 999 или -1) - в этот момент вы должны просто использовать null .

80
ответ дан 27 November 2019 в 00:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: