Я пытаюсь использовать IdentityServer3, но ни один из потоков не выпирал, что я хотел бы достичьзапрашивающая маркер непосредственно из IdentityServer3 с помощью JavaScript, используя имя пользователя/пароль
- одной страницы приложения (SPA) письменного только в HTML и Javascript пытается получить доступ к защищенной конечной точке API (в этом случае ASP.NET Web API v2).
- HTTP-401 возвращается, так как API, конечная точка защищена
- СП запрашивает маркер непосредственно из IdentityServer передавая имя пользователя и пароль
- IdentityServer3 передает обратно маркер авторизации, который включает в себя имя пользователя и формулу изобретение, связанное с имя пользователя
- SPA снова пытается получить доступ к конечной точке API, но передает токен-носитель в заголовке и разрешен доступ
- Наконец, я хотел бы реализовать токены обновления, чтобы SPA не должен был вводить имя пользователя и пароль a второй раз.
Течение Я посмотрел на:
неявного Flow - Предполагает редирект на IdentityServer в качестве средства аутентификации, который делает запрос. Я хотел бы напрямую аутентифицироваться с помощью IdentityServer. Также с IdentityServer3 после входа в систему страница представлена страницей согласия с запросом пользователя, хотят ли они поделиться этой информацией. Поскольку это внутренний логин, применимый только к рассматриваемому API, это кажется неуместным.
ресурсов Владелец Flow - Я понимаю, что этот поток требует client_secret, которое было бы невозможно сохранить в тайне в SPA
Может быть, я делаю это более сложный, чем нужно, но ни один из примеров, которые я похоже, придерживаются шагов, описанных выше. Можно ли использовать IdentityServer3?
Как можно снять экран согласия? – webworm
Если функции единого входа не нужны (просто защитите мой собственный API), может ли IdentityServer3 действовать только как маркер-эмитент и валидатор? – webworm
«это параметр конфигурации для каждого клиента» - это означает, что это параметр на клиенте –