Amazon S3 Glacier のボールト  とは

## 勉強前イメージ

Glacier を高く飛び越える・・・？
英語だけじゃよくわからん

## 調査

### Amazon S3 Glacier のボールト  とは

s3 Glacierのデータモデルの主要概念の内の一つで、
アーカイブを格納するコンテナのことを指します。
s3で言い換えるとバケットのことになります。

s3 Glacierのデータモデルの主要概念には
他にも `アーカイブ` というものがあり、
ログファイルや動画、写真などのデータのことを指し、
s3で言い換えるとオブジェクトのことになります。

### ボールトロック とは

ボールトロックとは、ボールトロックポリシーを用いて
s3 Glacierのコンプライアンス管理を簡単に適応することが出来ます。
ポリシーで、読み込みのみにしたり 登録から1年経過しないと削除できないなどの
ポリシーを適応することが出来ます。

### ボールトロックの適応方法

ボールトロックポリシーは変更ができないので、セットを行うのに2段階プロセスを踏みます。

- ボールトロックポリシーをボールトに関連付け
	- これによりテスト状態(InProgress)になる
	- 戻り値でLockIDが返ってくる
	- テスト状態は24時間
	- テスト状態の際もポリシーは適応されている
- LockIDをかけて本格的に稼働
	- ここから変更できなくなる

### 適応してみる

- 適当なボールトの作成

test-tokyoにボールトロックポリシーを適応していきます
タブでボールトロックから `ボールトロックポリシーの作成` に進みます

![1Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/32fa4f7e-50e1-0530-b3fe-fe2b2d28cb4c.png)


- アクセス許可追加の設定

下の枠に直接ポリシーの記載も出来ますが、
ウィザード形式での選択も可能です。
今回はウィザード形式での記載を行います。

![2Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/d392a50d-3c2f-d52b-d902-915e3f9c2f51.png)


- アクセス制御の設定

今回はアーカイブを削除することを禁止します。
以下設定です。

効果 : 拒否
プリンシパル : 全員
アクション : DeleteArchive

追加をするとJSON形式で表示されます。

![3Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/b7229630-f001-2ecf-147f-e9d9f87c85ba.png)


- ボールトロックを実施

問題なければボールトロックを開始します。

![4Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/af46ed14-4ead-a9f7-124b-791ff407e236.png)


- ボールトロックIDの記録

テスト状態になるとロックIDが発行されるので記録しておきます。

![5Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/cf483043-7881-b36f-2994-b9272677302e.png)


- この状態で色々テストを行います

この状態はすでにテスト状態なので、色々確認することが出来ます。
問題なければ本格的にロックを行います。
ボールトロックポリシーの有効期限も表示されます。

![6Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/425c0838-455c-7d25-ce29-3bbf5c45d2b0.png)


- ボールトロックの完了を実施

テストで問題なければ `ボールトロックの完了` で本格的に適応します

![7Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/35031710-a740-f59b-acaa-850f5c016473.png)


- ボールトロックの完了

先程出力されたロックIDを記載し
元に戻せないこと了承して完了を行います。

![8Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/0e88ccf4-df03-0884-aa96-9e7751fdf129.png)


- 設定完了

ボールトロックが設定できました。

![9Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/f078a936-f15b-1084-f0b2-fc8be63676af.png)


- 削除について

設定が完了したボールトロックは変更することが出来ないので、作り直すしかありません。
削除の際は、アーカイブを全て削除してからでないとボールトは削除できません。
また、削除してからでは同じ名前でボールトを作成することは可能です。

### 削除を行う

- ボールトの削除を行う

test-tokyo ボールトにはアーカイブがないので、そのままボールトの削除を行います。
ボールトの削除へ進みます。

![10Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/b34891d6-cd05-9ff4-b152-48b0203b458d.png)


- ボールトの削除

良ければ削除します

![11Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/c2fc0f55-287d-12af-7503-aca8db9c05fb.png)


- 削除の完了

完了です。

![12Glacier Management Console - Google Chrome 2021-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/5598240c-b990-432c-7a7a-f316a995f227.png)


## 勉強後イメージ

消せないようにだったり、アクセスできないようにすることが出来るってのが
ボールトロックポリシーの適応ってことか。
作ってみたらわかりやすかった。

## 参考

- [Amazon S3 Glacier のよくある質問](https://aws.amazon.com/jp/s3/glacier/faqs/)
- [【新機能】Amazon Glacierのアーカイブに上書き、削除禁止の「ロックポリシー」機能がつきました。](https://dev.classmethod.jp/articles/introduce-to-write-once-read-many-lock-on-amazon-glacier/)
- [S3 Glacierのボールトロック](https://nogasalog.hatenablog.com/entry/2020/03/21/215017)
- [【AWS】S3-Glacierの特徴を改めて整理する](https://sayjoyblog.com/s3_glacier/)