Я использую CognitoUserPool (com.amazon aws .mobileconnectors.cognitoidentityprovider.CognitoUserPool) и использую метод getSessionInBackground для входа в CognitoUsers и signUpInBackground для создания пользователей.
Например, для входа в систему:
CognitoUser me = userPool.getUser(email);
me.getSessionInBackground(new AuthenticationHandler() {
@Override
public void onSuccess(CognitoUserSession userSession, CognitoDevice newDevice) {
//OK
}
@Override
public void getAuthenticationDetails(AuthenticationContinuation authenticationContinuation, String userId) {
String password = "mypassword";
AuthenticationDetails details = new AuthenticationDetails(userId, password, null);
authenticationContinuation.setAuthenticationDetails(details);
authenticationContinuation.continueTask();
}
@Override
public void getMFACode(MultiFactorAuthenticationContinuation continuation) {
}
@Override
public void authenticationChallenge(ChallengeContinuation continuation) {
...
}
@Override
public void onFailure(Exception exception) {
//ERROR
}
});
и для регистрации:
CognitoUserAttributes userAttributes = getAttributesFromUser(ctx, u);
SignUpHandler signupCallback = new SignUpHandler() {
@Override
public void onSuccess(CognitoUser user, SignUpResult signUpResult) {
// Sign-up was successful
}
@Override
public void onFailure(Exception exception) {
// Sign-up failed, check exception for the cause
}
};
userPool.signUpInBackground(u.email, "mypassword", userAttributes, null, signupCallback);
Я хочу добавить поддержку Facebook (у меня уже есть логин на Facebook, и я хочу интегрировать зарегистрированных пользователей Facebook в пул когнитивных систем. Документы говорит, что мне нужно добавить объект Logins в AWSCredentials, но я создаю свой пул пользователей как:
userPool = new CognitoUserPool(ctx, POOL_ID, CLIENT_ID, CLIENT_SECRET, clientConfiguration, Regions.EU_CENTRAL_1);
, и я не нашел никакого конструктора с AWSCredentials в качестве входного параметра.
Я хочу сохранить пользователей, зарегистрированных с помощью Facebook, в моем пуле пользователей Amazon , у меня уже есть свой пользовательский сервер с входом на Facebook, я переношу пользователей на Amazon, но у меня все еще есть свои обычные API для входа и регистрации на Facebook.
Заранее спасибо