私はバックエンドサービスを作成しており、AWS Cognitoを使用しています。 今、私は自分のDeveloper Authenticated Identitiesを使用しています。 私のユーザは自分のシステムを使ってログインできます。この部分は完了です。コグニートを使用してユーザーの身元を確認します
ただし、ログイン後にユーザーを認証する際に問題が発生しています。ユーザーが自分のAPIの一部のプライベート関数にアクセスするリクエストを送信したとします。このユーザーを識別して認証するにはどうすればよいですか?
ログインプロバイダとしてFacebookを使用している場合、httpヘッダーはCognito IDとFacebookのアクセストークンで満たすことができます。次に、GetOpenIdTokenRequest関数を使ってCognitoトークンを取得しようとすると、彼を認証できます。
私は
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を使用して正しい方法は?