#react-native #facebook-graph-api #single-sign-on #keycloak #facebook-oauth
#react-native #facebook-graph-api #единый вход #keycloak #facebook-oauth
Вопрос:
Я пытаюсь реализовать социальный вход с использованием keycloak в приложении, использующем react, и, следуя официальной документации keycloak, я зашел в тупик. Я правильно настроил (согласно документации) правильный URI перенаправления.
Подробные сведения-
1. создал новое приложение facebook. Теперь у меня есть два разных веб-ресурса. a.) Экземпляр, на котором запущен сервер keycloak в настройке docker. b.) Фиктивное веб-приложение в другом домене, на которое я перенаправляю, используя свой собственный код react. Я использую пакет react-native-login, и конфигурация, которая входит в их метод Login.start (config), приведена ниже.
2. URI веб-сайта для приложения Facebook настраивается так же, как uri перенаправления, который keycloak предоставляет при добавлении поставщика удостоверений.Я дважды проверил свой идентификатор приложения и секрет приложения и переключил приложение на рабочий режим, указав ему политику конфиденциальности в фиктивном приложении express, на которое я пытаюсь перенаправить.
3. Сервер keycloak и приложение dummmy express, которые у меня есть, находятся в разных доменах (я не вижу никаких проблем с этим, но в руководстве, которое я просматривал, веб-сайт и сервер keycloak находятся в одном домене с разными поддоменами, может быть, это проблема).
Ошибка
{
"error": {
"message": "Can't load URL: The domain of this URL isn't included in the app's domains. To be able to load this URL, add all domains and sub-domains of your app to the App Domains field in your app settings.",
"type": "OAuthException",
"code": 191,
"fbtrace_id": "Awr-3dCV3zr"
}
}
объект конфигурации
const config = {
url: "https://authserver.ml/auth",
realm: "Demorealm",
client_id: "demoFrontEnd",
redirect_uri: "https://dummyapp.ml/privacypolicy",
appsite_uri: "https://dummyapp.ml",
kc_idp_hint: "facebook",
};
- URI веб-сайта в facebook = перенаправление uri с помощью keycloak (согласно документации keycloak)
добавлены оба домена в разделе «домены» настроек приложения facebook на вкладке «Основные». - В разделе Список разрешенных доменов перенаправления общего доступа в дополнительных настройках приложения Facebook я добавил оба URL-адреса ie. URL-адрес посредника аутентификации из keycloak и uri, на который я пытаюсь перенаправить после успешного входа в систему, но я получаю эту ошибку каждый раз
- Другой сценарий, который я заметил, заключается в том, что когда я пытаюсь присвоить объекту конфигурации react-native-login uri перенаправления, который упоминается в keycloak, я получаю ошибку недопустимого параметра от keycloak Примечание facebook — ошибка возникает из graph api facebook, что означает, что запрос на аутентификацию прошел мимо сервера keycloak и в facebook(https://graph.facebook.com/oauth/authorize?scope=emailamp;state=rest url-адреса) Любые предложения на этом этапе будут высоко оценены.