Недопустимый токен доступа при выполнении запроса getUser в cognito - PullRequest
0 голосов
/ 12 января 2019

Я интегрирую AWS cognito аутентификацию с социальным логином (facebook / google).

Я выполняю все шаги, указанные в документации, но в конце возвращаю Invalid Access Token

Service: AmazonCognitoIdentityProvider; 
Status Code: 400; 
Error Code: NotAuthorizedException; 
Request ID: 58fc3cfc-1649-11e9-91bc-3fb47a1bd404

Введите логин на Facebook для провайдера регистрации, этот код генерирует личность в моем пуле:

Map<String, String> logins = new HashMap<String, String>();
logins.put("graph.facebook.com",
AccessToken.getCurrentAccessToken().getToken());
credentialsProvider.setLogins(logins);

для создания пользователя в пуле пользователей я использую этот URL:

val url = "https://<my-domain-name>.auth.ca-central-1.amazoncognito.com/oauth2/authorize?redirect_uri=myapp://&response_type=token&client_id=<my-ClientId>&identity_provider=Facebook"

Этот URL создаст моего пользователя в пуле пользователей и вернет токен доступа и токен id в результате ниже:

access_token=eyJraWQiOiJyUXpaTDRUVGt6UDdoU3ZDbVB0NktpTVZDcXB4Z2ZFT3pJckpCWFB0WXZVPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiI2OTIwZDUwZC0zMTU4LTQwMTYtOTgyMi0wNDc0Yzc1MDFjYjIiLCJ0b2tlbl91c2UiOiJhY2Nlc3MiLCJzY29wZSI6ImF3cy5jb2duaXRvLnNpZ25pbi51c2VyLmFkbWluIHBob25lIG9wZW5pZCBwcm9maWxlIGVtYWlsIiwiYXV0aF90aW1lIjoxNTQ3Mjg4NDc0LCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAuY2EtY2VudHJhbC0xLmFtYXpvbmF3cy5jb21cL2NhLWNlbnRyYWwtMV9DSFVMbDV5c2wiLCJleHAiOjE1NDcyOTIwNzQsImlhdCI6MTU0NzI4ODQ3NCwidmVyc2lvbiI6MiwianRpIjoiNDE4MjNmNzUtMGFkMC00MTdjLThhOTYtM2JjZDM0NWNlZDQ3IiwiY2xpZW50X2lkIjoiN244Z25tdXFuM3NzZWFnaGNoOGQ2OWRibTIiLCJ1c2VybmFtZSI6IkZhY2Vib29rXzE5NDkyNzI0OTg1MDM3ODcifQ.GhaV996dFl7vx-tdkhhuq5HeSG0K5Tn20arF4M2i6YyRdm12mGJBWfmStOLLTzvYzz9ABRcIRmvy8imTSblafKMEqfDoRXn475g3xt0qs-omQTF2aFO_fi1wCCAMqT2Tb7LNG0CnGrcVXyutf3xB6vRg7ge7u6WPOEZqkLqf5bq2e5MMYCFSdqPIVMwnfV0AH6lGROCPr8GqHz8vPM3tdvSGMQYVL7PcL9I3IXgA354qt91RcqrXV_kxSkOFpysyJHB_eii0Wgrxe_zNFZvfx41ox7WlrVArZF9wF5VoqDF55160EJjlFwTqehmplZLh10rBhGn9ygpYLMSByibyKA
&id_token=eyJraWQiOiJ6ellnUlNYNDlMNzNEaWNLdEE4dWowOTF3akpNWHI1M2JnMjJJbW93QnF3PSIsImFsZyI6IlJTMjU2In0.eyJhdF9oYXNoIjoiekQ3WkZSVTFia2FOcXJQSWltV2h2dyIsInN1YiI6IjY5MjBkNTBkLTMxNTgtNDAxNi05ODIyLTA0NzRjNzUwMWNiMiIsImF1ZCI6IjduOGdubXVxbjNzc2VhZ2hjaDhkNjlkYm0yIiwiaWRlbnRpdGllcyI6W3sidXNlcklkIjoiMTk0OTI3MjQ5ODUwMzc4NyIsInByb3ZpZGVyTmFtZSI6IkZhY2Vib29rIiwicHJvdmlkZXJUeXBlIjoiRmFjZWJvb2siLCJpc3N1ZXIiOm51bGwsInByaW1hcnkiOiJ0cnVlIiwiZGF0ZUNyZWF0ZWQiOiIxNTQ3MjExMjg1MTEzIn1dLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTU0NzI4ODQ3NCwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLmNhLWNlbnRyYWwtMS5hbWF6b25hd3MuY29tXC9jYS1jZW50cmFsLTFfQ0hVTGw1eXNsIiwibmFtZSI6IkpheSBWZXJtYSIsImNvZ25pdG86dXNlcm5hbWUiOiJGYWNlYm9va18xOTQ5MjcyNDk4NTAzNzg3IiwiZXhwIjoxNTQ3MjkyMDc0LCJpYXQiOjE1NDcyODg0NzQsImVtYWlsIjoianYudmVybWEyOUBnbWFpbC5jb20ifQ.dK5D1Z1IIeEGdmDI6mbTV48580Rr26_ekQ7za6GrtGADQpm06Fgvtj2SJhv35u6kI6KVnCbNoRC9ewoGB8QmWFCvL2VI-djdDqbCrHSTKsb9RkG1PsfFXoFezvlv4NROc7p5pFPTrltZVH1oI2nf6bAtcMEp7Cp0v_NaYt8dJ0cdYslIGwikH3Dm1QiNKzoqkkUy1-fjwLRSJ5CiH9eUO8DvzB6VomNOHHN0A5F-EJbIAZFXiD3z9N86TsRyEKSpaR7JhmO20VVVLp_YvpUuY9Nagiknkx3gp08vYCBBro0dTnDDQSsOqfVTlNTI5QZz_7AQXrUl7iyAMcw91mfajw
&token_type=Bearer
&expires_in=3600

На последнем шаге я получаю запрос пользователя и отправляю accessToken в качестве параметра. После нажатия этого API у меня есть токен недействительного доступа

Service: AmazonCognitoIdentityProvider; 
Status Code: 400; 
Error Code: NotAuthorizedException; 
Request ID: 58fc3cfc-1649-11e9-91bc-3fb47a1bd404)
Invalid Access Token (Service: AmazonCognitoIdentityProvider; 
Status   Code: 400; 
Error Code: NotAuthorizedException; 
Request ID: 58fc3cfc-1649-11e9-91bc-3fb47a1bd404)

Ответы [ 2 ]

0 голосов
/ 20 января 2019

Наконец-то пришло решение - просто добавить конечную точку вручную в соответствии с моим регионом в моем запросе. Теперь Facebook и вход в Google работают нормально с AWS Cognito.

0 голосов
/ 12 января 2019

Можете ли вы попробовать удалить свое приложение из настроек Facebook и попробовать войти еще раз.

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