Запрос перекрестного происхождения заблокирован: Проблема с аутентификацией

#identityserver4 #abp

Вопрос:

Приложение ABP версии 4.4 с сервером идентификации с ядром angular EF

мой угловой клиент отправляет имя пользователя и пароль на сервер идентификации, который является частью моего приложения abp (имеется в виду тот же URL-адрес для api и сервера идентификации), который возвращает мне токен, но после следующего запроса «api/abp/конфигурация приложения» возвращается с ошибкой CORs. то же приложение работает для локальной среды QA с локальной конфигурацией. тот же вызов «api/abp/конфигурация приложения» работает при запуске приложения, потому что этот маркер времени не прикреплен в заголовке запроса. Я проверяю, что мои настройки приложения CorsOrigins совпадают с IdentityServerClientCorsOrigins.нет проблем с пространством как углового, так и внешнего интерфейса на https, но с другим портом. вы можете проверить это с помощью журналов. одна вещь странна в журнале без протокола attach @ response. (домен:1000)

Я проверяю и подтверждаю, что это проблема с аутентификацией. прокомментировав эти две строки и авторизовав атрибут из класса, мое приложение работает нормально. никаких проблем для cors

app.UseAuthentication(); app.UseJwtTokenMiddleware();

системный журнал

2021-09-04 10:42:24.731 -04:00 [INF] Параметры запуска запроса HTTP/2 https://domain:1000/.well-known/openid-configuration - -
2021-09-04 10:42:24.745 -04:00 [INF] Успешное выполнение политики CORS.
2021-09-04 10:42:24.751 -04:00 [INF] Запрос завершен ПАРАМЕТРЫ HTTP/2 https://domain:1000/.well-known/openid-configuration - - - 204 - - 19.7919 мс
2021-09-04 10:42:24.793 -04:00 [INF] Запрос, начинающийся с HTTP/2 GET https://domain:1000/.well-known/openid-configuration - -
2021-09-04 10:42:24.794 -04:00 [INF] Успешное выполнение политики CORS.
2021-09-04 10:42:46.050 -04:00 [ОШИБКА] При обработке сообщения произошло исключение.
Система.Исключение InvalidOperationException: IDX20803: Не удалось получить конфигурацию из: 'Системы.Струна".
System.IO.IOException: IDX20804: Не удается извлечь документ из: 'Системы.Струна".
Исключение System.Net.Http.HttpRequestException: Попытка подключения не удалась, поскольку подключенная сторона не ответила должным образом через некоторое время, или не удалось установить соединение, поскольку подключенный хост не ответил. (домен:1000)
Система.Сеть.Сокеты.Исключение SocketException (10060): Попытка подключения не удалась, поскольку подключенная сторона не ответила должным образом через некоторое время, или не удалось установить соединение, поскольку подключенный хост не ответил.

Ответ №1:

Это не проблема CORS, а потому, что ваш API (часть UseJwtTokenMiddleware) не может связаться с вашим сервером идентификации по HTTP (- ам). Я думаю, вам нужно решить какую-то проблему с DNS/сертификатом/сетью.