Я создаю серверную службу, и я использую AWS Cognito. Прямо сейчас, я использую свои удостоверения подлинности для разработчиков. Итак, мой пользователь может войти в систему, используя мою собственную систему. Эта часть выполнена.Проверка подлинности пользователя с помощью cognito
Однако у меня возникли проблемы с аутентификацией пользователя после входа в систему. Предположим, что пользователь отправил мне запрос на доступ к некоторым частным функциям моего API. Как я могу идентифицировать и аутентифицировать этого пользователя?
Если я использую facebook как поставщик логина, я могу выполнить заголовок http с его идентификатором Cognito и его токеном доступа к facebook. Затем я могу проверить его подлинность, пытаясь получить токен Cognito, используя функцию GetOpenIdTokenRequest.
у меня будет что-то вроде
providerTokens.put("graph.facebook.com", "xxxxxxxxxxxx");
tokenRequest.setLogins(providerTokens);
AmazonCognitoIdentityClient identityClient = new AmazonCognitoIdentityClient();
identityClient.setRegion(RegionUtils.getRegion(Configuration.REGION));
GetOpenIdTokenResult tokenResp = identityClient.getOpenIdToken(tokenRequest);
Однако, я не использую Facebook.
Итак, я попробовал немного что-то вроде этого
providerTokens.put("customdeveloper.authentication.com", "xxxxxxxxxxxx");
tokenRequest.setLogins(providerTokens);
Получение ошибки, что мой аутентификации разработчик не является публичной поставщик.
Я совершенно смущен, если я иду в правильном направлении. Я в основном хочу аутентифицировать своего пользователя. Нечто похожее на oauth2, где я получаю токен, может проверить идентификацию пользователя.
Как правильно это сделать, используя Cognito?