Identity Server 4 с appAuth - как установить дополнительные параметры для appAuthResponse в IDS4

Мы используем библиотеку React Native appAuth ( https://github.com/FormidableLabs/react-native-app-auth) с Identity Server 4. и пытаемся использовать дополнительные параметры в ответе. Причина этого в том, что у нас есть селектор языка на странице входа в IDS4, и мы хотим отправить выбранный язык обратно в приложение Native, и библиотека appAuth получит его, чтобы приложение могло соответствующим образом настроить его. Как мне изменить Identity Server, чтобы сделать это

return authorize(Auth.getConfig())
  .then(authDetails => {
    const { lang } = authDetails.additionalParameters;

    if (!lang) return authDetails;

    return Auth.setUserLang(lang, authDetails.accessToken).then(() => authDetails);
  })
  .then(authDetails => {
    store.dispatch(addAuth(authDetails));
    return authDetails;
  })
  .catch(e =>
    Auth.logout().then(() => {
      throw e;
    })
  );



static getConfig() {
const { apis: { identityServerURL } } = store.getState();

return {
  issuer: identityServerURL,
  clientId: IDENTITY_SERVER_CLIENT_ID,
  redirectUrl,
  additionalParameters: {},
  scopes: ['openid', 'profile', 'offline_access'],
  dangerouslyAllowInsecureHttpRequests: true,
};

}

Я пытался использовать ICustomAuthorizeRequestValidator

context.Result.ValidatedRequest.RedirectUri = $"{context.Result.ValidatedRequest.RedirectUri}?lang={context.Result.ValidatedRequest.UiLocales}";

но это не работает как ошибки сервера идентификации с "Error","MessageTemplate":"Недопустимый redirect_uri: {redirectUri}, ожидается {exceptionRedirectUri}","Properties":{"redirectUri":"icisapp:/oauthredirect","кроме RedirectUri" ":" icisapp: / oauthredirect LANG = ж"

У кого-нибудь есть идеи?

0 ответов

Другие вопросы по тегам