#プログラミング勉強日記
2021年6月2日
#S3の整合性モデル
S3は高い可用性を実現するために、強い整合性は持っていない。同時書き込み時はタイムスタンプ処理を実施している。データ更新・削除には結果整合性モデルを採用している。そのため、データ操作をしている途中はデータの矛盾が発生する可能性がある。
データ処理 | 整合性モデル |
---|---|
新規登録 | Consistency Read 登録後即時にデータが反映される |
更新 | Eventual Consistency Read 更新直後はデータ反映に時間がかかる |
削除 | Eventual Consistency Read 削除直後はデータ反映に時間がかかる |
#S3のアクセス管理
S3のアクセス管理は用途に応じで方式を使い分ける。他のストレージと違ってS3はインターネットから誰でもアクセスできるように使える。これを設定するにはパブリックアクセスを設定する。(パブリックアクセスを許可すると誰でもS3バケットのオブジェクトの読み込みができる)
##IAMユーザーポリシー
IAMユーザやサービスに対してS3サービスへのアクセス権限を設定できる。一元的にユーザ権限を管理する。
##バケットポリシー
バケットへのアクセス権をJSONで設定する。他のアカウントへの許可も可能。バケット単位の高度なアクセス管理向け。(IPアドレスの限定もできる。)
##ACL
バケットと個々のオブジェクトへのアクセス権限をXMLで設定する。他アカウントへの許可も可能。簡易的にアクセス管理う向け。
##署名付きURL
AWS SDKで生成した署名付きURLでS3のオブジェクトへの一定時間アクセスを許可する。一時的なアクセス権限を外部のユーザ(IAMユーザ以外)に渡したいときなどに使用する。