翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
API キーのベストプラクティス
API キーを保護し、そのライフサイクルを管理するには、以下のベストプラクティスに従ってください。
API キーの管理
API キーには、 AWS アカウント内の 1 つ以上のリソースへのアクセスを許可するプレーンテキストの値が含まれています。API キーをコピーしたユーザーは、同じリソースと API にアクセスできます。潜在的な影響を最小限に抑えるには、次のベストプラクティスを確認します。
-
API キーを制限する
このような状況を回避するには、API キーを制限することをお勧めします。キーを作成するとき、キーを使用できる、ドメイン、Android アプリまたは Apple アプリを指定できます。
-
API キーの有効期間を管理する
無期限に機能する API キーの作成ができます。ただし、一時的な API キーを作成したり、API キーを定期的にローテーションしたり、既存の API キーを取り消したりする場合は、API キーの有効期限を使用できます。
-
API キーを作成または更新するときに、API キーの有効期限を設定できます。
-
API キーの有効期限が切れると、キーは自動的に無効化されます。非アクティブなキーはマップリクエストには使用できなくなります。
-
一時キーを永続的キーに変更するには、有効期限を削除します。
-
API キーは、非アクティブ化してから 90 日後に削除することができます。
-
過去 7 日以内に使用された API キーを非アクティブ化しようとすると、変更の確認を求めるメッセージが表示されます。
-
Amazon Location Service API または を使用している場合は AWS CLI、
ForceUpdateパラメータを に設定します。trueそうしないと、エラーが発生します。
-
リクエストオリジン別の API キーの使用を制限する
特定のドメインまたはモバイルアプリケーションへのアクセスを制限するクライアント制限を使用して API キーを設定できます。ドメインで制限する場合、リクエストは HTTP リファラーヘッダーが指定した値と一致する場合にのみ承認されます。Android または Apple アプリケーションによって制限する場合、リクエストは、アプリケーション識別子の HTTP ヘッダーフィールドが指定した値と一致する場合にのみ承認されます。
詳細については、「Amazon Location Service API リファレンス」の「ApiKeyRestrictions」を参照してください。
Android アプリケーション識別子:
-
X-Android-Package:Android アプリケーションの一意の識別子。アプリの
build.gradleファイルで定義され、通常はリバースドメイン形式に従います。例:
com.mydomain.appname -
X-Android-Cert:Android APK の署名に使用される署名証明書の SHA-1 ハッシュ。
例:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
Apple アプリケーション識別子:
-
X-Apple-Bundle-Id:Apple (iOS、macOS など) アプリケーションの一意の識別子。アプリケーションの
Info.plistで定義され、通常はリバースドメイン形式に従います。例:
com.mydomain.appname