Secrets Managerにバイナリファイルを保存する方法

Secrets Managerにバイナリファイルを保存する方法

pemファイルをSecrets Managerに保存しようとしたのですが、Javaと.netの場合署名付きCoookie作成にはpemではなくderファイルに変換する必要があるようなのでpemをderファイルに変換してSecrets Managerに登録します。

https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/private-content-trusted-signers.html#private-content-reformatting-private-key

pemをderに変換

Linuxでopensslからpemをderに変換します。WSLでもopensslコマンドが使えます。

derファイルはバイナリファイルの為、現時点でSecrets Managerではマネジメントコンソールからはサポートしておらず、AWS CLIで登録する必要があります。file://だとエラーになりますので「fileb://バイナリファイル」とします。

シークレットキーがtestという名前で登録されていることが確認できます。

Secrets Managerにバイナリファイルを保存する方法

バイナリファイルの場合はマネジメントコンソールからキーの値を見ることが出来ません。

Secrets Managerにバイナリファイルを保存する方法

コマンド

シークレットキーの一覧を確認するコマンドです。

シークレットキーの値を確認するには以下コマンドで確認します。

SecretBinaryに設定されている値は、derファイルをbase64エンコードした値と同じです。

以下コマンドの結果とイコールになります。

シークレットキー削除

シークレットキーを削除するコマンドです。

シークレットキーに登録したderファイルをバイナリファイルとして戻す方法です。

aws secretsmanager get-secret-value –secret-id シークレットキー名 | jq -r .SecretBinary | base64 –decode > バイナリファイル.der

view raw
gistfile1.txt
hosted with ❤ by GitHub

Windows環境のコマンドプロンプトの場合はbase64の変わりにcertutilコマンドがあるようです。

登録したderファイルを使って署名付きCookieの発行が可能になります。

AWS CloudFront+S3で署名付きCookieでプライベートコンテンツを配信する方法

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

コメントをどうぞ

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

CAPTCHA