Ich arbeite an einer App, die es Benutzern ermöglicht, sich mit ihrem Google-Konto anzumelden und diese Anmeldung dann zu verwenden, um eine Cognito-Verbundidentität zu erhalten.Cognito Google Federated Identität, ungültig OpenId Connect Identitäts-Token
Ich bin nicht in der Lage, das richtige Token zur Authentifizierung mit Cognito zu erhalten. Ich halte den Fehler immer com.amazonaws.services.cognitoidentity.model.NotAuthorizedException: Invalid login token. Not a valid OpenId Connect identity token.
Hier ist mein Code:
Runnable runnable = new Runnable() {
@Override
public void run() {
CognitoSyncClientManager.init(getActivity().getApplicationContext());
String token = null;
try {
token = GoogleAuthUtil.getToken(getActivity().getApplicationContext(), signInAccount.getAccount(), "oauth2:openid");
}catch (Exception e){
Log.d("login exception", e.toString());
}
Map<String, String> logins = new HashMap<String, String>();
logins.put("accounts.google.com", token);
CognitoSyncClientManager.addLogins("accounts.google.com", token);
Log.d("login", "Created User token " + token);
Log.d("login", "Cached UserID: "+CognitoSyncClientManager.credentialsProvider.getCachedIdentityId());
Log.d("login", "UserID: " + CognitoSyncClientManager.credentialsProvider.getIdentityId());
Toast.makeText(getActivity().getApplicationContext(), "Created user: "+CognitoSyncClientManager.credentialsProvider.getCachedIdentityId(), Toast.LENGTH_LONG);
}
};
Thread t = new Thread(runnable);
t.start();
Vielen Dank! Ich würde dir 100 Stimmen geben, wenn ich könnte! – Reid