Amplify アプリケーションでの環境変数の使用 - AWS Amplify ホスティング

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amplify アプリケーションでの環境変数の使用

環境変数は、アプリケーションの設定に追加して Amplify ホスティングで使用できるようにするキーと値のペアです。ベストプラクティスとして、環境変数を使用してアプリケーションの設定データを公開することができます。追加した環境変数はすべて、不正アクセスを防ぐために暗号化されています。

Amplify は、作成する環境変数に次の制約を適用します。

  • Amplify では、AWS プレフィックスを使用して環境変数名を作成することはできません。このプレフィックスは Amplify の内部でのみ使用されるよう予約されています。

  • 環境変数の値は 5500 文字を超えることはできません。

重要

シークレットの保存に環境変数を使用しないでください。Gen 2 アプリの場合は、Amplify コンソールの [シークレット管理] 機能を使用します。詳細については、「Amplify ドキュメント」の「シークレットと環境変数」を参照してください。Gen 1 アプリの場合は、AWS Systems Manager パラメーターストアを使用して作成した環境シークレットにシークレットを保存します。詳細については、「環境シークレットの管理」を参照してください。

Amplify の環境変数のリファレンス

以下の環境変数は、Amplifyコンソールからデフォルトでアクセス可能です。

変数名 説明 値の例

_BUILD_TIMEOUT

ビルドのタイムアウト時間 (分単位)。

30

_LIVE_UPDATES

ツールは最新バージョンにアップグレードされます。

[{"name":"Amplify CLI","pkg":"@aws-amplify/cli","type":"npm","version":"latest"}]

USER_DISABLE_TESTS

ビルド中はテストステップはスキップされます。アプリ内のすべてのブランチまたは特定のブランチのテストを無効にできます。

この環境変数は、ビルドフェーズ中にテストを実行するアプリに使用されます。この変数の設定の詳細については、「Amplify アプリケーションまたはブランチのテストをオフにする」を参照してください。

true

AWS_APP_ID

現在のビルドのアプリ ID

abcd1234

AWS_BRANCH

現在のビルドのブランチ名

main, develop, beta, v2.0

AWS_BRANCH_ARN

現在のビルドのブランチ Amazon リソースネーム (ARN)。

aws:arn:amplify:us-west-2:123456789012:appname/branch/...

AWS_CLONE_URL

git リポジトリの内容を取得するために使用されるクローン URL

git@github.com:<user-name>/<repo-name>.git

AWS_COMMIT_ID

現在のビルドのコミット ID

再ビルドの「HEAD」

abcd1234

AWS_JOB_ID

現在のビルドのジョブ ID。

これには、「0」のパディングが含まれるため、長さは常に同じになります。

0000000001

AWS_PULL_REQUEST_ID

プルリクエスト Web プレビュービルドのプルリクエスト ID。

この環境変数は、リポジトリプロバイダーとして AWS CodeCommit を使用する場合は使用できません。

1

AWS_PULL_REQUEST_SOURCE_BRANCH

Amplify コンソールのアプリケーションブランチに送信されるプルリクエストプレビューの機能ブランチの名前。

featureA

AWS_PULL_REQUEST_DESTINATION_BRANCH

機能ブランチのプルリクエストが送信される Amplify コンソール内のアプリケーションブランチの名前。

main

AMPLIFY_AMAZON_CLIENT_ID

Amazon クライアント ID

123456

AMPLIFY_AMAZON_CLIENT_SECRET

Amazon クライアントシークレット

example123456

AMPLIFY_FACEBOOK_CLIENT_ID

Facebook クライアント ID

123456

AMPLIFY_FACEBOOK_CLIENT_SECRET

Facebook クライアントシークレット

example123456

AMPLIFY_GOOGLE_CLIENT_ID

Google クライアント ID

123456

AMPLIFY_GOOGLE_CLIENT_SECRET

Google クライアントシークレット

example123456

AMPLIFY_DIFF_DEPLOY

差分ベースのフロントエンドデプロイを有効または無効にします。詳細については、「差分ベースのフロントエンドビルドとデプロイの設定」を参照してください。

true

AMPLIFY_DIFF_DEPLOY_ROOT

差分ベースのフロントエンドデプロイ比較に使用するパスで、リポジトリのルートを基準にしています。

dist

AMPLIFY_DIFF_BACKEND

差分ベースのバックエンドビルドを有効または無効にします。これは Gen 1 アプリにのみ適用されます。詳細については、「Gen 1 アプリケーションの diff ベースのバックエンドビルドの設定」を参照してください。

true

AMPLIFY_BACKEND_PULL_ONLY

Amplify は、この環境変数を管理します。これは Gen 1 アプリにのみ適用されます。詳細については、「既存のフロントエンドを編集して、別のバックエンドを指すようにします」を参照してください。

true

AMPLIFY_BACKEND_APP_ID

Amplify は、この環境変数を管理します。これは Gen 1 アプリにのみ適用されます。詳細については、「既存のフロントエンドを編集して、別のバックエンドを指すようにします」を参照してください。

abcd1234

AMPLIFY_SKIP_BACKEND_BUILD

ビルド仕様にバックエンドセクションがなく、バックエンドビルドを無効にする場合は、この環境変数をtrueに設定してください。これは Gen 1 アプリにのみ適用されます。

true

AMPLIFY_ENABLE_DEBUG_OUTPUT

この変数を true に設定して、スタックトレースをログに出力します。これは、バックエンドビルドエラーのデバッグに役立ちます。

true

AMPLIFY_MONOREPO_APP_ROOT

monorepo アプリのアプリルートを指定するために使用するパスで、リポジトリのルートを基準にしています。

apps/react-app

AMPLIFY_USERPOOL_ID

認証用にインポートされた Amazon Cognito ユーザープールの ID

us-west-2_example

AMPLIFY_WEBCLIENT_ID

ウェブアプリケーションが使用するアプリケーションクライアントの ID。

アプリケーションクライアントは、AMPLIFY_USERPOOL_ID の環境変数で指定された Amazon Cognito ユーザープールにアクセスできるように設定する必要があります。

123456

AMPLIFY_NATIVECLIENT_ID

ネイティブアプリケーションが使用するアプリケーションクライアントの ID。

アプリケーションクライアントは、AMPLIFY_USERPOOL_ID の環境変数で指定された Amazon Cognito ユーザープールにアクセスできるように設定する必要があります。

123456

AMPLIFY_IDENTITYPOOL_ID

Amazon CognitoアイデンティティプールのID。

example-identitypool-id

AMPLIFY_PERMISSIONS_BOUNDARY_ARN

Amplify で作成されたすべてのIAM ロールのアクセス許可の境界として使用する IAM ポリシーの ARN です。

arn:aws:iam::123456789012:policy/example-policy

AMPLIFY_DESTRUCTIVE_UPDATES

この環境変数を true に設定すると、データ損失を引き起こす可能性のあるスキーマ操作で GraphQL API を更新できます。

true

注記

AMPLIFY_AMAZON_CLIENT_IDおよびAMPLIFY_AMAZON_CLIENT_SECRET環境変数は OAuth トークンであり、AWSアクセスキーやシークレットキーではありません。

フロントエンドフレームワーク環境変数

独自の環境変数をサポートするフロントエンドフレームワークを使用してアプリを開発している場合、これらは Amplify コンソールで設定する環境変数と同じではないことを理解することが重要です。例えば、React (プレフィックス REACT_APP) や Gatsby (プレフィックス GATSBY) では、ランタイム環境変数を作成して、それらのフレームワークがフロントエンドのプロダクションビルドに自動的にバンドルすることができます。これらの環境変数を使用して値を保存した場合の効果を理解するには、使用しているフロントエンドフレームワークのドキュメントを参照してください。

API キーなどの機密性の高い値を、フロントエンドフレームワークのプレフィックスが付いた環境変数内に保存することはベストプラクティスではないため、あまりお勧めしません。この目的で Amplify のビルド時環境変数を使用する例については、ビルド時の環境変数へのアクセスを参照してください。