Parameter Store に新データ型 13 種類!変な設定値は保存前にはじくよ
みんな、しぃちゃんだよ!
AWS What's New設定値の入力ミスって、本番で動かしてから気づくとつらいよね。今日はそれを防げる発表だよ。
なにが発表されたの?
AWS の What's New で、AWS Systems Manager Parameter Store が 13 種類の新しいパラメータデータ型に対応したと発表されたよ。
パラメータを作成・更新するときに、値が自動で検証されるの。不正な IP アドレス、AWS アカウント ID、JSON ドキュメントのような壊れた設定値を、アプリが読む前に止められるんだって。自前の検証ロジックは要らないよ。
これで何が変わるの?
- 不正な値は
PutParameterの呼び出し時に拒否される DescribeParametersAPI やコンソールで、データ型によるフィルタができる- 既存のテキストパラメータのデータ型も変更できる
深く潜ってみよう
使えるデータ型
スタンダードパラメータでもアドバンストパラメータでも使える型はこの 10 個だよ。
aws:regionaws:account:idbooleanintegerfloatbinaryhostnameemailipv4-addressipv6-address
アドバンストパラメータ専用の型は、この 3 個だよ。
urljsonjsonc
ほかのルール
- String と SecureString のパラメータで使える
- いくつかの型は StringList でも使えて、その場合はリストの各項目が検証される(どの型が対応かは原文には書かれていなかったよ)
- データ型は
AllowedPatternと組み合わせて、さらに条件を足せる - 全リージョンの Systems Manager で使える
url/json/jsoncは、既存のアドバンストパラメータの料金で課金される
各型の細かい検証内容や長さの上限は、原文には書かれていないよ。AWS Systems Manager ユーザーガイドの「Parameter data types」を見てね。
まとめ
- 新しいデータ型は 13 種類(共通 10、アドバンスト専用 3)
- 検証は
PutParameterで行われ、合わない値は拒否される - 型でのフィルタや、
AllowedPatternとの併用ができる - 既存のテキストパラメータの型も変更できる
設定値の入力ミスで痛い目を見たことがある人や、検証を自前で書いている人に刺さる発表だよ!