前提・実現したいこと
AWSのS3,CloudFront,Cognitoを利用して、セキュアなwebページを作成したい。
CloudFrontデフォルトのホストされたUIで認証後、S3に配置したコールバックURLへ遷移した際に、そのコールバックURLを利用して
認証されていない別PCなどで同じコールバックURLを叩いても、何らかのエラーで閲覧できないようにしたい。
発生している問題・エラーメッセージ
CloudFrontデフォルトのホストされたUIで認証後、userPool.getCurrentUser()でcognitoUserが取得できれば、
index.html側も閲覧できるようにし、それ以外の場合は認証画面へリダイレクトする仕組みにしている。
認証後コールバックURL側でcognitoUserを取得しようとすると、nullが返却されて認証画面へリダイレクトされてしまう。
CloudFrontデフォルトのホストされたUIで認証した際に、cognitoUserを取得する方法があるか?
それともCloudFrontデフォルトのホストされたUIを使用せずに、独自で認証画面を用意して、ログインしなければだめか?
### 該当のソースコード (() => { // Amazon Cognito 認証情報プロバイダーを初期化します AWS.config.region = "ap-northeast-1"; // リージョン AWS.config.credentials = new AWS.CognitoIdentityCredentials({ IdentityPoolId: "hogehoge", }); // ユーザープールの設定 const poolData = { UserPoolId: "ap-northeast-1_hogehoge", ClientId: "hogehoge" }; const userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData); const cognitoUser = userPool.getCurrentUser(); // 現在のユーザー 言語 javascript,html ### 試したこと OAuth 2.0の設定、ID系が誤っていないかどうかの確認等は実施済。 必要なライブラリの読み込み等は確認済。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。