Аутентификация ASP.Net с использованием <credentials>в web.config - PullRequest
6 голосов
/ 23 марта 2011

Мне нужно опубликовать демонстрационный сайт в Интернете. Мне нужен безопасный доступ к сайту.

Действующий сайт с использованием SQL Server в качестве поставщика членства. Однако для демонстрационного сайта я могу публиковать только на простом веб-хосте и не иметь доступа к SQL Server.

Мне нужен только один пользователь, и им не нужно менять пароль и т. Д. Поэтому я подумал, что самым простым способом добиться этого будет использование члена внутри файла web.config. Я создал следующее:

<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.web>
      <authentication mode="Forms">
      <forms name="ProjectApple" loginUrl="~Login.aspx">
        <credentials passwordFormat="Clear">
          <user name="lawyer" password="Super12."/>
        </credentials>
      </forms>
    </authentication>
    <compilation debug="true"/>
  </system.web>
</configuration>

Я буду использовать хэш SHA1, когда смогу заставить это работать. Проблема в том, что он распознает, когда я ввел неверный пароль. Однако, когда я ввожу правильный пароль, я получаю следующее:

Cannot open user default database. Login failed.
Login failed for user 'RB-T510\Rob'. 
Description: An unhandled exception occurred during the execution of the current web          request. Please review the stack trace for more information about the error and where it   originated in the code. 

Exception Details: System.Data.SqlClient.SqlException: Cannot open user default   database. Login failed.
Login failed for user 'RB-T510\Rob'.

Я не знаю, почему он ищет SQL? Может кто-нибудь помочь, пожалуйста?

Я использую VS2010 и .Net 3.5

Большое спасибо,

Rob

Ответы [ 3 ]

4 голосов
/ 23 марта 2011

Чтобы использовать проверку подлинности форм с учетными данными в web.config, необходимо использовать метод FormsAuthentication.Authenitcate .Похоже, у вас есть элемент управления Login по умолчанию, который пытается получить доступ к классу членства.

0 голосов
/ 10 апреля 2012

Сначала проверьте ваш режим аутентификации. если SQLAuthentication, укажите UserId и пароль в строке подключения.

Exameple:

<"Data source="";Initial Catalog="Dbname";UserId=sa;Password=1234">
0 голосов
/ 23 марта 2011

Я собираюсь предположить, основываясь на формате имени пользователя в ошибке, что у вас все еще есть строка подключения в вашем web.config с Integrated Security=True, и на открывающейся странице есть какой-то элемент управления, который являетсязапрос данных из SQL.

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