AWS Amplify Storageのアクセスレベルprotectedを使用してみようと思ったが

AWS Amplify Storageのアクセスレベルprotectedを実装しようと思いましたが、他ユーザのcognito identity id取得方法が提供されていないようです。
今回は調べた内容の情報共有です。

前回の記事でAWS Amplify Storageのprivateを取り扱っています。

ファイルアクセスレベル

前回も記載しましたが、Amplifyが提供しているStorage(S3)へのアクセスには、3つのアクセスレベルがあります。
今回はprotectedについて扱っています。

レベル 説明 ファイル格納先
public 全ユーザがアクセス可能 public/
protected 全ユーザがアクセスできるが、書き込みは自分のフォルダのみ protected/{cognito identity id}/
private アクセスできるのは自分のみ private/{cognito identity id}/

実装を試みたが。。。

実装を試みましたが、自身以外のcognito identity idの取り方ってどうするんだろうか。。。
AWS Amplify APIを参照するが、他ユーザのcognito identity idの取り方がわからなかった。

そこで、AWS Amplifyのissueを確認していたところ、以下のissueを発見しました。

How to get protected data from S3 Storage?

このやり取りによると、「現在他のユーザ情報を取得する方法はありません」とのこと、質問者はDynamoDBにidentity idを登録し他のユーザの情報を取得できるように対応しているようです。
また、このやり取りの中で、以下のissueへのリンクがあり、こちらでもidentity idをどうやって入手するのかが議論されており、回避方法についても話されていますが、SDKによるサポートを受けるのが正しい在り方だと平行線のままで、約1年OPENのままとなっています。

How to find the bidirectional map between Cognito identity ID and Cognito user information?

スポンサーリンク
  • このエントリーをはてなブックマークに追加
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA