できること
Amplify Hostingのプレビューブランチ機能を使えば、特定ブランチにpushするたびに自動でビルドされたURLが更新されます。社外レビューで「修正しました、同じURLで確認してください」と伝えるだけでOKなため、URLを毎回再送する手間がなく、メールの往復回数が減ります。
Amplifyコンソールには環境変数管理機能があり、ビルド時に埋め込む変数をブランチごとに分けられます。レビュー用ブランチには本番のAPIキーを設定しないようにし、モックデータやスタブAPIを指定することで、内部情報や外部送信が残らない状態のビルドを作れます。
- 相手がログインなしで開ける状態か確認する
- PCとスマホで最低1回ずつ表示を確認する
- 内部情報・個人情報・不要な外部送信が残っていないか見る
- レビュー期限と修正時の差し替え方を決めておく
できないこと
Amplifyコンソールへのアクセス権を持たない外部の承認者が、自分でレビューURLを管理・無効化することはできません。すべての操作(Basic認証のパスワード変更・ブランチの削除・環境変数の更新)はAWSアカウント権限を持つ側が行う必要があり、「クライアントが自分でレビューページを閉じる」という運用は成立しません。
AmplifyのBasic認証は環境全体にかかるため、同じブランチのURLを使って一部のページは公開、一部は認証付きという細かい制御は標準機能ではできません。ページ単位のアクセス制御が必要な場合は、アプリケーションレベルのルーティングとCognito認証を組み合わせる追加実装が必要です。
認証と期限の違い
「誰でも見てよい」場合のAmplifyプレビューURLは、デフォルトでindex化される可能性があります。Amplifyの*.amplifyapp.comドメインはGoogleにクロールされることがあるため、`<head>`内にnoindexタグを入れるか、Amplifyコンソールの「アクセスコントロール」でBasic認証を有効にして公開範囲を制限することを推奨します。
短期レビュー用の期限設定が必要な場合、Amplifyには有効期限機能がないため代替手段として「レビュー完了後にすぐブランチを削除する」をチームルールとして定めるか、AWSのEventBridgeスケジューラーでAmplifyのブランチ削除APIを自動実行するスクリプトを用意する方法があります。後者は設定に数時間かかりますが、期限の自動化として有効です。
- 誰でも見てよい: URL共有のみでもよいが、検索除外は確認する
- 特定の相手だけ: パスワードまたはメール認証を使う
- 会社内だけ: 会社ドメイン認証を検討する
- 短期レビュー: 期限を設定して古いURLを残さない
差し替え・レビュー運用
社外レビューの観点は「文言の誤字・リンクの動作・スマホでの崩れ」に絞って依頼するとフィードバックが具体的になります。Amplifyのプレビュー環境は実際のブラウザで動くため、モックではなく実際のインタラクション(ホバー・スクロール・フォーム入力)を確認してもらえる点がメリットです。
修正後に同じURLで更新される仕組みを活かすため、「このURLをブックマークしてください」と伝えると繰り返しのレビューがスムーズになります。ただし最終版の確認後はブランチを保護ブランチに設定するか削除して、承認済みコンテンツに意図せず上書きが入らないようにすることが重要です。
- 確認してほしい観点を3つ以内に絞る
- 期限と返信先を明記する
- 修正後も同じURLで見られるか伝える
- 最終版と途中版が混ざらないようタイトルを付ける
向いているケース早見表
Amplify Hostingの社外レビューが向いているのは、クライアントやパートナーがエンジニアまたはIT部門を持っており、URLを渡すだけでリビューを完結できるシンプルなケースです。特にCI/CDの自動プレビューが機能すれば、修正→確認のサイクルが高速化します。
Amplifyが向かないのは、承認者が多段階(デザイン承認→営業確認→役員最終確認)に分かれており、段階ごとに異なるアクセス制御が必要なケースです。この場合は各段階用に別々のパスワード付きURLを発行できる専用の共有サービスを使った方が、管理の見通しが良くなります。
よくある質問
Amplify HostingでBasic認証を設定した際、ユーザー名とパスワードをクライアントに伝える安全な方法は何ですか?
パスワードはメール本文ではなく、SlackのDMや1Passwordの共有リンクなど別チャンネルで伝えることを推奨します。メール転送されると意図しない第三者にパスワードが渡るリスクがあります。
Amplify Hostingのビルドログに環境変数の値が表示されてしまうことはありますか?
Amplifyはビルドログに環境変数の値をマスクする機能を持ちますが、カスタムビルドスクリプト内でenvをechoするとログに出力されます。ビルドスクリプト内でシークレット値を意図的にプリントしていないか確認してください。
社外レビューでAmplifyの自動デプロイが動き続けると、レビュー中にページが変わってしまうリスクはありますか?
レビュー期間中にブランチへの追加pushがあると即座に更新されます。これを防ぐには、レビュー用に専用のブランチを切り、レビュー開始後はそのブランチへのpushをチームで止めるか、Amplifyコンソールで自動ビルドを一時停止します。