CloudFront署名URL生成
AWS CloudFrontのプライベートコンテンツにアクセスするための署名URLを生成します
基本設定
例: https://d111111abcdef8.cloudfront.net/private/video.mp4
有効期限
署名方式
キーペア情報
例: APKAXXXXXXXXXXXXXXXX
PEM形式のRSA秘密鍵を入力またはファイルから読み込み
使い方
このツールについて
AWS CloudFrontのプライベートコンテンツにアクセスするための署名URLを生成します。定型ポリシー(Canned Policy)とカスタムポリシー(Custom Policy)の両方に対応し、IPアドレス制限、開始時刻、複数リソースパターンなどの詳細設定が可能です。
使い方
1. 基本設定: CloudFront URL、有効期限(相対時刻・絶対時刻・UNIXタイムスタンプ)、署名方式(定型ポリシー・カスタムポリシー)を入力 2. キーペア情報: キーペアIDとPEM形式のRSA秘密鍵を入力またはファイルから読み込み 3. 詳細設定(カスタムポリシーの場合): IPアドレス制限、有効開始時刻、複数のファイルパターンを設定 4. 「生成」ボタンをクリックして署名URLを生成 5. 生成されたURLをコピー、QRコード生成、またはテストできます
オプション
署名方式: 定型ポリシー(シンプル、有効期限のみ)またはカスタムポリシー(IP制限、開始時刻、複数リソース対応)。有効期限: 相対時刻(分・時間・日・週)、絶対時刻(日時とタイムゾーン)、UNIXタイムスタンプ(秒単位)。詳細設定(カスタムポリシー): IPアドレス/CIDR(例: 192.168.1.0/24)、開始時刻(日時とタイムゾーン)、リソースパターン(ワイルドカード対応、例: https://d111111abcdef8.cloudfront.net/private/*)。
ユースケース
• プレミアムコンテンツの一時的なアクセス許可(動画、PDF、画像など) • 限定公開ファイルのダウンロードリンク生成 • タイムアウト付きのアクセス制御 • IPアドレス制限付きのセキュアな配信 • 複数のファイルパターンに対する一括アクセス許可
技術的な仕組み
CloudFront署名URLは、RSA-SHA1署名を使用して生成されます。定型ポリシーの場合、有効期限のみを含むシンプルなURLパラメータを生成します。カスタムポリシーの場合、JSON形式のポリシー(IP制限、開始時刻、リソースパターンを含む)をBase64 URL safeエンコードし、RSA-SHA1で署名します。すべての処理はブラウザ内で完結し、秘密鍵はサーバーへ送信されません。
プライバシーとデータの扱い
すべての処理はブラウザ内で完結し、秘密鍵や生成されたURLをサーバーへ送信しません。秘密鍵はメモリ上で扱い、ローカルストレージには保存しません。
よくある質問
- Q: CannedポリシーとCustomポリシーの違いは何ですか?
- A: Cannedポリシーは有効期限のみを持つ署名付きURLを生成する最もシンプルなオプションです。Customポリシーは追加の制限をサポートします:開始時刻(最早アクセス時刻)・IPアドレス/CIDR制限・ワイルドカードサポート付きの複数リソースパターン。
- Q: CloudFrontのキーペアIDと秘密鍵はどこで確認できますか?
- A: AWSコンソールで:CloudFront→キー管理→パブリックキーに移動してキーペアを作成または確認します。キーペアIDはリストに表示されます。秘密鍵(.pemファイル)は作成時にダウンロードしてください。後から取得することはできません。
- Q: このツールに秘密鍵を貼り付けても安全ですか?
- A: すべての処理はブラウザ内で行われます。秘密鍵はサーバーに送信されず、localStorageにも保存されません。メモリ内にのみ存在し、ページを閉じるか再読み込みするとクリアされます。一般的なルールとして本番の秘密鍵をブラウザツールで使用することは避けてください。
- Q: 1つの署名付きURLで複数のファイルパターンへのアクセスを制限できますか?
- A: はい、Customポリシーで可能です。リソースパターンにワイルドカードを使用してください(例:https://d111111abcdef8.cloudfront.net/private/*)。これにより1つの署名付きURLでパス配下の複数ファイルをカバーできます。
- Q: 有効期限の設定方法を教えてください。
- A: 3つの形式がサポートされています:相対時刻(例:今から1時間後)・タイムゾーン選択付きの絶対日時・秒単位のUNIXタイムスタンプ。
