Если вы можете зашифровать действительный тикет в своем классическом ASP-коде таким образом, чтобы модуль ASP.NET FormsAuthentication мог его дешифровать, то будет считаться пользователь с таким тикетом (хранящийся в файле cookie или в URL).аутентифицирован в конвейере запросов ASP.NET.
Вот документация о том, как вручную шифровать статический метод FormsAuthentication.Encrypt
:
http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.encrypt.aspx
Это показывает, чтобилет на самом деле ничего особенного, в основном имя пользователя, срок действия.Обратите внимание, что вы также храните некоторые дополнительные пользовательские данные в заявке.
Конечно, это все еще не дает нам фактический алгоритм шифрования.Это зависит от конфигурации в web.config, в частности, <machineKey>
-элемента.Вы должны явно установить атрибут decryptionKey , потому что вам нужно использовать тот же ключ в вашем классическом ASP-коде.
MSDN: элемент machineKey
И вам также следует установить атрибут decryption , чтобы вы могли использовать тот же алгоритм в вашем коде Classic ASP (как DES например).При необходимости вы можете создать собственный алгоритм дешифрования, если можете поддерживать встроенные в вашем классическом ASP-коде.
В итоге вы получите такую конфигурацию:
<machineKey decryptionKey="your key here" decryption="DES" />
Вот как я бы это реализовал.