Как передать проверку подлинности Windows (браузер) из приложения реагировать на единого входа Spnego Kerberos Spring? - PullRequest
0 голосов
/ 13 июня 2019

У нас есть приложение реагирования, которое использовало получение этих данных из весеннего загрузочного веб-сервиса. Оба развернуты на одном сервере (Tomcat). Но нам нужна только аутентификация Kerberos для вызова веб-сервиса из приложения React. Любой может открыть приложение React, но когда он перемещается, он вызывает webservcie для получения данных. Поэтому, если мы настроим пружину для поддержки spnego kerberos spring sso, возможно ли, что браузер автоматически (из приложения React, как реакция запускается в браузере) автоматически войдет вошедшие в систему учетные данные Windows в веб-службу весенней загрузки.

Мы вызываем сервис из приложения «Реагировать» следующим образом -

export const client = rest
  .wrap(mime, { registry: registry })
  .wrap(errorCode)
  .wrap(defaultRequest, {
    headers: {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    },
    method: 'GET'
  })



export const fetchPDSIs = (Id) =>
  APIHelpers.client(APIHelpers.buildPDSIReq(Id))
    .then(
      response => (response.entity || []).sort((a, b) => a.portalinstance.localeCompare(b.portalinstance))
      ,
      response => {
        global.msg.error(<div className='smallTextNotification'>`Fetching instances and portal for {Id} error: {response.status.code} -> {response.status.text}</div>)
        return []
      }
    )

export const buildPDSIReq = (Id) => ({path: `${serverAddr}/msd232/pdsiii/${Id}`})

1 Ответ

1 голос
/ 09 июля 2019

Да, это возможно, требования со стороны клиента:

  1. Пользователь вошел в учетную запись домена в ОС.
  2. Правильная конфигурация в вашем браузере, см. Весенняя документация

например. для Internet Explorer:

E.3 Internet Explorer

Выполните следующие шаги, чтобы убедиться, что ваш браузер Internet Explorer включен для выполнения проверки подлинности Spnego.

Open Internet Explorer.
Click Tools > Intenet Options > Security tab.
In Local intranet section make sure your server is trusted by i.e. adding it into a list.

Проверка подлинности Kerberos запускается HTTP-заголовком, возвращаемым из серверной службы:

WWW-Authenticate: Negotiate

Если ваша ОС и браузер настроены правильно, это вызовет генерацию заявки на обслуживание, которую браузер отправит как Авторизация Значение заголовка HTTP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...