Не удалось расшифровать токен подделки?[Не могу избавиться от этой странной ошибки] - PullRequest
0 голосов
/ 21 мая 2019

Я разработал веб-приложение в Asp.Net MVC, используя язык c # с подходом, основанным на коде, приложение развернуто на реальном веб-сервере и функционирует довольно хорошо, за исключением этой ошибки, которая появляется несколько раз.

The anti-forgery token could not be decrypted. If this application is hosted by a Web Farm or cluster, ensure that all machines are running the same version of ASP.NET Web Pages and that the <machineKey> configuration specifies explicit encryption and validation keys. AutoGenerate cannot be used in a cluster

Причина, по которой я назвал эту ошибку странной, заключается в том, что она является неожиданной. Это означает, что она возникает иногда, но не всегда.

Например, когда я пытаюсь войти в одну учетную запись моего приложения (например, в учетную запись Джона) с двух разных компьютеров, я могу получить или не получить эту ошибку.

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

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

Спасибо ввперед.

1 Ответ

2 голосов
/ 21 мая 2019

Вы определили MachineKey в вашем web.config файле? Если NO , следуйте приведенной ниже статье, чтобы узнать, как легко создать ее с помощью IIS Manager

.

Настройка ключа машины с помощью диспетчера IIS

<configuration>
  <system.web>
    <machineKey decryptionKey="Decryption key goes here,IsolateApps" 
                validationKey="Validation key goes here,IsolateApps" />
  </system.web>
</configuration>

Одно большое важное замечание:

Если вы добавите маркер защиты от подделки дважды или более на ваш взгляд, это может вызвать эту проблему. Проверьте свои взгляды, общие, частичные и посмотрите, если вы добавляете anti-forgery токен только один раз!

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