

# 認可と認証キャッシング
<a name="s3-outposts-auth-cache"></a>

S3 on Outposts は、Outposts ラック上のローカルで認証および認可データを安全にキャッシュします。キャッシュは、リクエストごとに親 AWS リージョン へのラウンドトリップを削除します。これにより、ネットワークラウンドトリップに伴う変動を排除できます。S3 on Outposts の認証キャッシュと認可キャッシュを使用すると、Outposts とAWS リージョン間の接続のレイテンシーとは無関係の一貫したレイテンシーが得られます。

S3 on Outposts API リクエストを行うと、認証および認可データは安全にキャッシュされます。その後、キャッシュされたデータは、後続の S3 オブジェクト API リクエストを認証するために使用されます。S3 on Outposts は、リクエストが Signature Version 4A (SigV4A) を使用して署名された場合にのみ、認証および認可データをキャッシュします。キャッシュは、S3 on Outposts サービス内の Outposts にローカルに保存されます。S3 API リクエストを行うと、非同期的に更新されます。キャッシュは暗号化され、プレーンテキストの暗号化キーは Outposts に保存されません。

キャッシュは、Outpost が AWS リージョン に接続されてから最大 10 分間有効です。S3 on Outposts API リクエストを行うと、最新のポリシーが使用されるように非同期的に更新されます。Outpost が AWS リージョン から切断されている場合、キャッシュは最大 12 時間有効です。

## 認可キャッシュと認証キャッシュの設定
<a name="config-auth-cache"></a>

S3 on Outposts は、SigV4A アルゴリズムで署名されたリクエストの認証および認可データを自動的にキャッシュします。詳細については、「*AWS Identity and Access Management ユーザーガイド*」の「[AWS API リクエストの署名](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html)」を参照してください。SigV4A アルゴリズムは、最新バージョンの AWS SDK で使用できます。これは、[AWSCommon Runtime (CRT) ライブラリ](https://docs.aws.amazon.com/sdkref/latest/guide/common-runtime.html)への依存関係を通じて取得できます。

最新バージョンの AWS SDK を使用し、最新バージョンの CRT をインストールする必要があります。例えば、`pip install awscrt` を実行して Boto3 で CRT の最新バージョンを取得できます。

S3 on Outposts は、SigV4 アルゴリズムで署名されたリクエストの認証および認可データをキャッシュしません。

## SigV4A 署名の検証
<a name="validate-SigV4A"></a>

AWS CloudTrail を使用してリクエストが SigV4A で署名されたことを確認できます。S3 on Outposts の CloudTrail の設定についての詳細は、「[AWS CloudTrail ログで S3 on Outposts をモニタリングする](S3OutpostsCloudtrail.md)」を参照してください。

CloudTrail を設定したら、CloudTrail ログの `SignatureVersion` フィールドでリクエストがどのように署名されたかを確認できます。SigV4A で署名されたリクエストでは、`SignatureVersion` が `AWS4-ECDSA-P256-SHA256` に設定されます。SigV4 で署名されたリクエストでは、`SignatureVersion` が `AWS4-HMAC-SHA256` に設定されます。