Как упростить сгенерированный пароль пользователя при регистрации в DotNetNuke 5.6.3 - PullRequest
1 голос
/ 16 января 2012

При регистрации в качестве нового пользователя на сайте DotNetNuke 5.6.3 введенный пользователем пароль игнорируется (как бы он ни был сложен - он, безусловно, отвечает системным требованиям) и надежный, но уродливый пароль

Два связанных вопроса:

  1. В чем может быть причина, по которой желаемый пользователем пароль игнорируется и заменяется автоматически сгенерированным паролем?
  2. Есть ли способ заставить DotNetNuke создать менее безопасный (и, следовательно, менее уродливый) пароль, может быть, просто буквы, пропуская специальные символы (это требование клиента, поэтому, пожалуйста, не обсуждайте безопасность в сети ;-))

Настройки AspNetSqlMembershipProvider в web.config следующие:

<add name="AspNetSqlMembershipProvider" 
type="System.Web.Security.SqlMembershipProvider" 
connectionStringName="SiteSqlServer" 
enablePasswordRetrieval="true" 
enablePasswordReset="true" 
requiresQuestionAndAnswer="false" 
minRequiredPasswordLength="7" 
minRequiredNonalphanumericCharacters="0" 
requiresUniqueEmail="false" 
passwordFormat="Encrypted" 
applicationName="DotNetNuke" />

Ответы [ 2 ]

3 голосов
/ 16 января 2012

У меня была та же проблема, и я прыгал через те же обручи.

В итоге я изменил поставщика членства по умолчанию для DotNetNuke.

1) Загрузить источник DNN 5.6.3

2) Откройте главное решение, перейдите к /library/providers/membershipproviders/ASPNetMembershipProvider/AMPNetMembershipProvider.vb Линия ~ 826

3) Функция редактирования Public Overloads Overrides Function GeneratePassword(ByVal length As Integer) As String

4) Замените его содержимое на: Return Guid.NewGuid().ToString().Substring(0, 7) или любой другой код генерации пароля, который вы хотите использовать.

5) Компилировать

6) Скопируйте полученную DLL в развернутую установку DNN

Примечания

  • Я использую NewGUID (), потому что он смешивает буквы и цифры, мои пользователи таковы, что любая пунктуация их выбрасывает
  • Мой источник DNN подключен к Subversion. Я рекомендую это, если вы модифицируете ядро ​​
  • Я также рекомендую вставить ''Begin OLAF Modifications и END OLAF Modifications до и после ваших изменений, чтобы через несколько месяцев при переходе на DNN 6 вы могли сделать те же самые модификации в источнике DNN 6, выполнив поиск OLAF Modifications в источнике DNN 5.6.3
  • Модификация источника DNN является решением последней проблемы, но я считаю, что это необходимо в этом случае
1 голос
/ 16 января 2012

Часть 2 на мой вопрос ответил hamlin11 . Я нашел решение для части 1 (на случай, если кому-то интересно):

В DesktopModules \ Admin \ Security \ User.ascx есть скрытый флажок с именем 'chkRandom', для которого в моей установке установлено значение True, но в то же время он невидим (не знаю, что на это влияет - странная настройка, пользователь никогда не знает, почему его пароль заменяется случайным. Установка этого значения в false решает проблему.

...