Защита основных данных Asp.Net между веб-приложениями не работает в Azure - PullRequest
0 голосов
/ 19 февраля 2019

У меня есть два WebApps в Azure, работающие в плане обслуживания уровня Free.Существует сценарий, в котором я генерирую токен пароля для сброса идентификатора из WebApp A и использую его в WebApp B.

В моем файле Startup.cs у меня есть установка DataProtection, как указано ниже в методе ConfigureServices:

services.AddDataProtection().SetApplicationName("appname");

Локально работает, но когда я пытаюсь сбросить пароль в этом сценарии, я получаю сообщение об ошибке Invalid Token в Azure.

Я запускаю ASP.NET Core 2.1 с Identity Core.Есть ли какие-либо ограничения Azure для этой установки DataProtection или что-то связанное с бесплатным тарифным планом уровня?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 01 марта 2019

Если вы хотите поделиться cookie между приложением ASP.Net core ASP.net, попробуйте эту статью https://docs.microsoft.com/en-us/aspnet/core/security/cookie-sharing?view=aspnetcore-2.2`

services.AddDataProtection()
    .PersistKeysToFileSystem(GetKeyRingDirInfo())
    .SetApplicationName("SharedCookieApp");

services.ConfigureApplicationCookie(options => {
    options.Cookie.Name = ".AspNet.SharedCookie";
});`
0 голосов
/ 26 февраля 2019

Существуют некоторые различия в работе APS.NET (Core) на сервере IIS и в веб-приложениях Azure.Хотя это не совсем ограничение (в этом случае вы получите ошибку), некоторые вещи технически не работают.Насколько я читал, у вас нет собственного виртуального сервера в веб-приложениях, а есть пул серверов, где в любое время любой сервер может быть выделен для вашей задачи.Это приводит к тому, что некоторые вещи не работают должным образом, и если вы обнаружили разницу, это почти наверняка связано с этим.

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

...