Допустимый символ для пароля SQL Server CE? - PullRequest
3 голосов
/ 18 февраля 2011

В веб-приложении, которое мы разрабатываем, мы генерируем файлы базы данных SQL Server CE, а для них мы также генерируем пароли. Пароли создаются с помощью System.Web.Security.Membership.GeneratePassword ().

Я предположил, что GeneratePassword сгенерировал подходящие строки пароля, так как он использует буквы, цифры и символы. На http://msdn.microsoft.com/en-us/library/aa257373(v=sql.80).aspx я нахожу смутное утверждение, что пароли SQL Server CE "могут содержать буквы, символы, цифры или комбинацию."

Но сегодня был сгенерирован пароль, который сделал невозможным создание базы данных, потому что строка подключения, очевидно, содержала недопустимые символы. «&», если быть точным.

Я искал в сети полный список символов, чтобы выполнить функцию очистки белого списка, но не могу найти такую ​​информацию.

У кого-нибудь есть такой список допустимых символов для паролей SQL Server CE?

Ответы [ 2 ]

3 голосов
/ 22 июля 2011

Мне пришлось создать собственный генератор паролей. Blogged ЗДЕСЬ

Похоже, у вас проблема с XML.Специальные символы XML (или web.config):

  1. quot "
  2. amp &
  3. apos '
  4. lt <</li>
  5. gt>

Кроме того, при использовании в строке подключения OLE DB или ODBC логин или пароль не должны содержать следующие символы: [] {} (),;? *! @.

Кроме того, если вам требуются надежные пароли, они должны содержать символы как минимум из трех следующих категорий:

  1. английские заглавные буквы (от A до Z) * ​​1024 *
  2. Английские строчные буквы
  3. символов (от a до z) Базовые 10 цифр (от 0 до 9) Неалфавитные
  4. символы (например:!, $, #,%)
0 голосов
/ 18 февраля 2011

Интересно, нужно ли использовать экранированный символ для амперсанда.

...