Я в настоящее время наткнулся на разочарование Forbidden 403 error при выполнении простого GET WebRequest для Okta. Я добавил URL-адрес приложения в Okta Admin> Security> API как CORS. Ниже мой кодHttpWebRequest to Okta приводит к Forbidden 403
string requestURL = "https://myokta.oktapreview.com/api/v1/users/me";
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(requestURL);
request.Method = "GET";
request.Timeout = 120000;
request.ContentType = "application/json";
WebResponse response = request.GetResponse(); // exception Forbidden 403
я мог копировать вставить requestURL в интернет-браузере и получить ответ JSon без каких-либо проблем. И если у меня нет сеанса, он также возвращает код ошибки E0000005 - Недействительный сеанс.
Если я не могу сделать это через WebRequest, любое предложение о том, какой клиент использовать в okta.core.dll?
Пожалуйста, помогите мне, и любая помощь будет очень признательна. Спасибо ...
Могу ли я спросить, что ваш вариант использования здесь? Похоже, вы пытаетесь сделать этот вызов из кода сервера вашего веб-приложения. Однако эта конкретная операция/api/v1/users/me предназначена только для использования в канале браузера (например, для вызова JavaScript) и должна использовать cookie сеанса, привязанный к вашему домену Okta (обычно устанавливается в ваш сеанс браузера, когда вы проверяете подлинность с Okta). Если ваш пользователь уже прошел аутентификацию с помощью своего веб-приложения, ваше веб-приложение должно иметь доступ к контексту http, чтобы узнать, кем является текущий пользователь. Разве это не так? –
В случае использования у нас есть два отдельных решения для веб-клиента и веб-api. В веб-api он имеет атрибут Authorize, а web api не знает/не получает идентификатор ClaimsIdentity из веб-клиента wsfed. –