Гость
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Membership api, аутентификация истекает через минуту / 17 сообщений из 17, страница 1 из 1
02.02.2019, 21:54
    #39768769
Aleksy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
На разрабатываемом компьютере со студией все нормально, но заливаю сайт на хостинг, после логина следующим кодом:

Код: c#
1.
2.
3.
4.
        if (Membership.ValidateUser(TextBox1.Text, TextBox2.Text))
        {
            FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, true);
        }



примерно через минуту почему-то происходит выход из аутентификации. Перепробовал изменять настройки web.config и директив Page, типа:

EnableViewStateMac="false"
validateRequest="false"
enableEventValidation="false"
viewStateEncryptionMode ="Never"

Не помогает, вот на всякий случай весь web.config:

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
<?xml version="1.0"?>
<!--
  Дополнительные сведения о настройке приложения ASP.NET см. на странице
  https://go.microsoft.com/fwlink/?LinkId=169433.
  -->
<configuration>
  <!--
    Описание изменений web.config см. по адресу http://go.microsoft.com/fwlink/?LinkId=235367.
 
    Следующие атрибуты можно установить с помощью тега <httpRuntime>.
      <system.Web>
        <httpRuntime targetFramework="4.7" />
      </system.Web>
  -->
  <system.web>
    <sessionState timeout="3000"/>
    <customErrors mode="Off"/>
    <compilation debug="true" targetFramework="4.7" />
    <httpRuntime targetFramework="4.7" />
    <pages styleSheetTheme="Skin1" enableViewStateMac="false" validateRequest="false" enableEventValidation="false" viewStateEncryptionMode ="Never"/>
    <authentication mode="Forms" >
      <forms name="MyCookieName" loginUrl="/Call/ChangeUser.aspx" timeout="3000" slidingExpiration="true" cookieless="AutoDetect" protection="None"
        requireSSL="false" enableCrossAppRedirects="false" defaultUrl="/Call/ChangeUser.aspx" path="/">
 
      </forms>
    </authentication>
    <authorization>
      <allow users="?"/>
      <allow users="*"/>
    </authorization>
    <membership defaultProvider="MyMembershipProvider">
      <providers>
        <add connectionStringName="connSqlServer" applicationName="myapp" minRequiredPasswordLength="5" minRequiredNonalphanumericCharacters="0"
          passwordFormat="Clear" description="Необязательно описание поставщика членства" enablePasswordReset="true" enablePasswordRetrieval="false"
          maxInvalidPasswordAttempts="20" passwordAttemptWindow="20" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" name="MyMembershipProvider"
          type="System.Web.Security.SqlMembershipProvider"/>
      </providers>
    </membership>
    <roleManager enabled="true" cacheRolesInCookie="true" cookieName=".MyRolesCookie"
      defaultProvider="MyRoleProvider">
      <providers>
        <add connectionStringName="connSqlServer" applicationName="myapp"
          name="MyRoleProvider" type="System.Web.Security.SqlRoleProvider" />
      </providers>
    </roleManager>
  </system.web>
  <!-- заглушка от ошибки -->
  <appSettings>
    <add key="ValidationSettings:UnobtrusiveValidationMode" value="None"/>
  </appSettings>
  <connectionStrings>
    <add name="connSqlServer" connectionString="Data Source=myapp.ru;Initial Catalog=u0640305_myapp;User Id=admin;Password=12345;Connect Timeout=30"/>
  </connectionStrings>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
    </compilers>
  </system.codedom>
</configuration>

Модератор: Учимся использовать тэги оформления кода - FAQ
...
Рейтинг: 0 / 0
03.02.2019, 09:50
    #39768829
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Aleksy,
Добейтесь чтобы настройки АппСевера были один в один с тестовым локальным.
...
Рейтинг: 0 / 0
03.02.2019, 10:50
    #39768836
Aleksy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Вообщем полностью голый сайт вылетает с ошибкой каждую минуту(

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

See http://go.microsoft.com/fwlink/?LinkID=314055 for more information.
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.Web.HttpException: Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

При этом приложение перезапускается.

Попробовал посмотреть Cookies - есть ASP.Net_SessionId - значение которого не меняется после ошибок, то есть сеанс все таки не разрывается?

Но смущает Expires - 1969 год
...
Рейтинг: 0 / 0
03.02.2019, 11:26
    #39768844
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
AleksyВообщем полностью голый сайт вылетает с ошибкой каждую минуту
Дак с ошибкой надо разбираться, а не с куками.

Что за хостинг? Как туда заливаете сайт? Какая там инфраструктура?
Если там веб ферма, то читайте детали исключения: "If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster."
...
Рейтинг: 0 / 0
03.02.2019, 11:30
    #39768846
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
А по прочитанному могу предположить к примеру следующую ситуацию.

Вы используюте Session и балансировщик нагрузки прибивает сессию (sticky session) к определённому бекенду на минуту (ну такие настройки).
Через минуту запрос летит на другой сервер из фермы и возникает "System.Web.HttpException: Validation of viewstate MAC failed".

Расскажите подробнее о хостинге.
...
Рейтинг: 0 / 0
03.02.2019, 11:34
    #39768849
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
AleksyПерепробовал изменять настройки web.config и директив Page, типа:

EnableViewStateMac="false"
validateRequest="false"
enableEventValidation="false"
viewStateEncryptionMode ="Never"Решили упростить сложность взлома сайта до минимума?
...
Рейтинг: 0 / 0
03.02.2019, 13:23
    #39768877
Aleksy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Дмитрий МухAleksyВообщем полностью голый сайт вылетает с ошибкой каждую минуту
Что за хостинг? Как туда заливаете сайт? Какая там инфраструктура?
Если там веб ферма, то читайте детали исключения: "If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster."

Хостинг reg.ru, создаю полностью голый проект, публикую сайт через студию, через ftp копирую. Asp .net 4.7


[quot Дмитрий Мух]AleksyРешили упростить сложность взлома сайта до минимума?


Гуглил и были советы по отключать эти настройки для теста, типа может заработает, но не помогает.
...
Рейтинг: 0 / 0
03.02.2019, 13:24
    #39768880
Aleksy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Самое интересное что все работает нормально даже с БД и со всеми страницами, но очень недолго)
...
Рейтинг: 0 / 0
03.02.2019, 13:31
    #39768883
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
AleksyСамое интересное что все работает нормально даже с БД и со всеми страницами, но очень недолго)
Советую поговорить с поддержкой хостинга. Они должны знать какая у них там инфраструктура.

А если не логиниться, а тупо ходить по страницам, ничего не заполняя, чисто GET запросы?
...
Рейтинг: 0 / 0
03.02.2019, 13:49
    #39768890
Aleksy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Вроде нашел что помогло, добавление:

[XML]
<machineKey validationKey=".........." decryptionKey=".........." validation="SHA1" decryption="AES" />
[/XML]

Теперь надо понять что это и где правильные значения для этого брать) потому что у меня были из инета.
...
Рейтинг: 0 / 0
03.02.2019, 13:52
    #39768891
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
AleksyВроде нашел что помогло, добавление:

[XML]
<machineKey validationKey=".........." decryptionKey=".........." validation="SHA1" decryption="AES" />
[/XML]

Теперь надо понять что это и где правильные значения для этого брать) потому что у меня были из инета.
:)

это же вам и было предложено в Exception Details: ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

Что и где Вы прописали из инета?
...
Рейтинг: 0 / 0
03.02.2019, 13:56
    #39768892
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Aleksy,

вот, читайте (желательно полностью и внимательно):

Resolving view state message authentication code (MAC) errors

Appendix A: How to generate a <machineKey> element
...
Рейтинг: 0 / 0
03.02.2019, 13:58
    #39768894
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
И обратите внимание на:
Security warningThere are many web sites that will generate a <machineKey> element for you with the click of a button.
Never use a <machineKey> element that you obtained from one of these sites.
It is impossible to know whether these keys were created securely or if they are being recorded to a secret database.
You should only ever use <machineKey> configuration elements that you created yourself.
А он по классике... "у меня были из инета"
...
Рейтинг: 0 / 0
03.02.2019, 14:02
    #39768895
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
AleksyГуглил и были советы по отключать эти настройки
Кросавчег! :)

Не знаю как так можно было гуглить, но если тупо искать по деталям исключения:
"System.Web.HttpException: Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.", -
то вторая ссылка как раз таки на статью от Microsoft, что я приводил выше.

Мой Вам совет: читайте сначала от вендора решения, а потом уже от не пойми кого не пойми откуда.
...
Рейтинг: 0 / 0
03.02.2019, 14:11
    #39768897
Aleksy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Дмитрий МухИ обратите внимание на:
Security warningThere are many web sites that will generate a <machineKey> element for you with the click of a button.
Never use a <machineKey> element that you obtained from one of these sites.
It is impossible to know whether these keys were created securely or if they are being recorded to a secret database.
You should only ever use <machineKey> configuration elements that you created yourself.
А он по классике... "у меня были из инета"


Все понял, буду изучать, и не брать ключ с сайтов, но если разок запустил тестовый сайт на таком ключе ничего страшного?
...
Рейтинг: 0 / 0
03.02.2019, 14:15
    #39768899
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
AleksyДмитрий МухИ обратите внимание на:
пропущено...

А он по классике... "у меня были из инета"


Все понял, буду изучать, и не брать ключ с сайтов, но если разок запустил тестовый сайт на таком ключе ничего страшного?
Ничего страшного. Тестовый разок можно :)
...
Рейтинг: 0 / 0
03.02.2019, 15:45
    #39768918
Kykapa4a
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Membership api, аутентификация истекает через минуту
Такая же фигня была на reg.ru но с identity, снес все к херам и взял vps на 1cloud за 1тыс. р. в мес., теперь все работает как часики.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Membership api, аутентификация истекает через минуту / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]