У меня есть серверное веб-приложение Blazor, размещенное в Azure Appservice (Linux). Пользователи входят в систему с учетными данными azureAD, и при входе в систему они могут нажать sh кнопку для создания PDF-файла страницы отчета с помощью puppeteersharp (использует Chrome headless под капотом). Конфигурация аутентификации Blazor основана на встроенном шаблоне от Microsoft.
Все это работало, пока я не активировал Azure аутентификацию AD, проблема в том, что теперь Puppeteersharp (Chrome headless) не может получить доступ к URL-адресу отчета (на том же сайте) для создания PDF-файла, поскольку он не аутентифицирован.
У меня есть зарегистрированный пользователь, как я могу повторно использовать accesstoken из пользовательского сеанса в Puppeteersharp / Chrome headless?
В Puppeteersharp вы можете установить дополнительный HTTP-заголовок (page.SetExtraHttpHeadersAsyn c), не должен ли я получить доступ к пользовательским сеансам и добавить его в качестве токена-носителя в заголовок? Как мне тогда получить доступ к accesstoken?
Другой вариант, возможно, - использовать page.SetCookieAsyn c () в puppeteersharp, но я не могу получить ie повара из httpcontext в любом значимом формате , он разбит на 4 части и выглядит так, как будто он зашифрован.
Пожалуйста, посоветуйте, здесь действительно запутались.