

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Annexe A : Comment Services AWS utiliser le présigné URLs
<a name="appendix-a"></a>

Cette annexe fournit des informations Services AWS et des fonctionnalités relatives à l'utilisation de la présignature URLs. Ces informations ont deux objectifs :
+ Fournir aux ingénieurs de sécurité qui mettent en œuvre des contrôles des informations sur les impacts possibles de ces contrôles.
+ Sensibiliser aux situations dans lesquelles ce risque peut être pertinent pour les interactions de journalisation des URL.

**Important**  
Cette annexe ne fournit pas une liste complète des présignés Services AWS URLs ni leur utilisation. Il ne couvre pas non plus les solutions personnalisées ou tierces.

## Console Amazon S3
<a name="s3-console"></a>

**Principal :** utilisateur de la console

**Expiration par défaut :** 5 minutes

**Exclusion de responsabilité**  
 Cette section décrit le comportement actuel de la console Amazon S3. AWS les comportements de la console peuvent être modifiés sans préavis.

La console Amazon S3 prend en charge le téléchargement et le chargement d'objets. Les téléchargements utilisent une URL présignée dont le délai d'expiration est de 300 secondes (5 minutes).  L'URL est générée par une demande adressée à`https://<bucket-region>.console.aws.amazon.com/s3/batchOpsServlet-proxy`.

Cette demande est lancée lorsque l'utilisateur clique sur un bouton de téléchargement, de sorte que l'URL n'est pas générée à l'avance ou envoyée au client tant que la demande explicite de téléchargement n'a pas été formulée.

Les téléchargements sont similaires, sauf que la console envoie deux demandes : `OPTIONS` sous forme de contrôle CORS avant le vol, et. `PUT` Les deux demandes utilisent la même signature.

Les informations d'identification utilisées pour la signature sont des informations d'identification temporaires associées à l'utilisateur actuellement connecté. Les détails relatifs à la méthode d'obtention de ces informations d'identification temporaires ne sont pas inclus dans ce guide.

## Amazon S3 Object Lambda
<a name="s3-object-lambda"></a>

**Principal :** appelant du point d'accès

**Expiration par défaut :** 61 secondes

**Note**  
Depuis le 7 novembre 2025, S3 Object Lambda n'est disponible que pour les clients existants qui utilisent actuellement le service, ainsi que pour certains partenaires AWS Partner Network (APN). Pour des fonctionnalités similaires à celles de S3 Object Lambda, cliquez ici : modification de la disponibilité d'[Amazon S3 Object Lambda](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazons3-ol-change.html).

[Amazon S3 Object Lambda](https://aws.amazon.com/s3/features/object-lambda/) utilise des AWS Lambda fonctions pour traiter et transformer automatiquement les données lorsqu'elles sont extraites d'Amazon S3. Lorsque S3 Object Lambda invoque une fonction, celle-ci reçoit une URL présignée (`inputS3Url`) qu'elle peut utiliser pour télécharger l'objet d'origine depuis le point d'accès compatible. 

Ils URLs sont présignés pour le [point d'accès Amazon S3 compatible](https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-security.html#olap-access-points-security), qui est fourni lorsque vous configurez S3 Object Lambda. (Ce n'est pas la même chose que le point d'accès Object Lambda.) Au lieu d'utiliser un rôle lié à la fonction Lambda, l'URL est signée en utilisant l'identité de l'appelant d'origine, et les autorisations de cet utilisateur s'appliquent lorsque l'URL est utilisée. Si l'URL contient des en-têtes signés, la fonction Lambda doit inclure ces en-têtes dans l'appel à Amazon S3.

L'URL présignée renvoyée a un délai d'expiration de 61 secondes (une seconde de plus que la durée maximale d'une fonction Lambda d'un objet S3). L'URL générée ne peut être utilisée qu'avec le point d'accès compatible. L'appelant du point d'accès S3 Object Lambda doit avoir accès à ce point d'accès. Vous pouvez limiter cet accès au contexte de S3 Object Lambda en utilisant la condition. `"aws:CalledVia": ["s3-object-lambda.amazonaws.com"]` Lorsque cette condition est attachée à un point d'accès ou à un bucket de support, un utilisateur ne peut pas accéder directement au point d'accès ou au bucket de support.

L'avantage de cette approche est qu'il n'est pas nécessaire d'accorder à la fonction Lambda l'accès à votre compartiment ou point d'accès S3. Le rôle associé à la fonction Lambda aura besoin d'autorisations pour **WriteGetObjectResponse**, mais pas d'autorisations pour. **GetObject**

Lorsque S3 Object Lambda génère une version présignée URLs, il n'ajoute aucune restriction réseau. Une URL peut donc être utilisée en dehors de la fonction Lambda. Cependant, toutes les restrictions imposées à l'appelant de S3 Object Lambda s'appliquent toujours. Par exemple, si votre fonction Lambda s'exécute dans un VPC et que vous limitez l'appelant à utiliser un point de terminaison VPC, toute personne en possession de l'URL présignée devra être en mesure de l'envoyer via ce point de terminaison VPC. Cette restriction s'applique également à **SourceIp**et **VpcSourceIp**. 

**Note**  
Pour utiliser une fonction Lambda d'un objet S3 dans un VPC, celui-ci doit disposer d'une route vers les points de terminaison S3 publics à appeler. **WriteGetObjectResponse** Cela n'indique pas que les exigences relatives à l'utilisation d'un point de terminaison VPC ne s'appliqueraient pas aux demandes de récupération de données depuis le compartiment.

## AWS Lambda Interrégional CopyObject
<a name="lambda-cross-region-copy-object"></a>

**Principal :**AWS interne

**Expiration par défaut :** 3600 secondes

Lorsque vous utilisez l'[UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)API [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)or pour effectuer une copie Régions AWS, Amazon S3 utilise une version présignée URLs en interne. Ils APIs peuvent être appelés directement depuis SDKs ou depuis les AWS CLI commandes `aws s3api copy-object` et`aws s3api upload-part`. Ils APIs ne sont pas utilisés pour la réplication Amazon S3, mais ils sont utilisés par les `aws s3 sync` commandes AWS CLI `aws s3 cp` et lorsque la source et la destination sont des compartiments S3. Ils sont également pris en charge par `TransferManager` des implémentations dans divers AWS SDKs domaines.

## AWS Lambda GetFunction
<a name="lambda-get-function"></a>

**Principal :** AWS interne

**Expiration par défaut :** 10 minutes

AWS Lambda stocke la version utilisateur dans un compartiment S3 appartenant à l'équipe Lambda, avant de générer les actifs déployés sur des conteneurs Lambda. Lorsque vous souhaitez accéder au code de votre fonction, vous appelez l'[GetFunction](https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunction.html)API. Cette API répond par `Code.Location` une URL présignée valide pendant 10 minutes (ce délai d'expiration correspond au comportement actuel et non à un contrat publié). Si vous ne voulez pas le code, vous pouvez utiliser une combinaison de [GetFunctionConfiguration[GetFunctionConcurrency](https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunctionConcurrency.html)](https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunctionConfiguration.html), et [ListTags](https://docs.aws.amazon.com/lambda/latest/dg/API_ListTags.html)pour récupérer les autres données renvoyées par`GetFunction`.

L'URL renvoyée n'est pas signée avec les informations d'identification de l'utilisateur actuellement connecté, mais au nom de l'utilisateur par Lambda. Pour cette raison, les clés de condition (telles que`aws:SourceIP`) appliquées à l'utilisateur actuellement connecté ou aux informations d'identification de session temporaires de l'utilisateur ne s'appliquent pas à l'URL générée. Cela est vrai que les clés de condition soient appliquées **GetFunction**uniquement ou qu'elles soient appliquées à toutes les utilisations de l'API AWS pour l'utilisateur ou la session.

La console Lambda utilise **GetFunction**également l'URL présignée qu'elle renvoie. La console utilise les informations d'identification temporaires associées à l'utilisateur actuellement connecté pour appeler **GetFunction**. Les détails relatifs à l'obtention de ces informations d'identification temporaires ne sont pas couverts par ce document.

## Amazon ECR
<a name="ecr"></a>

**Principal :** AWS interne

**Expiration par défaut :** 1 heure

Amazon Elastic Container Registry (Amazon ECR) fournit [GetDownloadUrlForLayer](https://docs.aws.amazon.com/AmazonECR/latest/APIReference/API_GetDownloadUrlForLayer.html)l'API, qui renvoie une URL présignée valide pendant une heure et prend en charge le téléchargement d'une seule couche à partir d'une image Amazon ECR. Cependant, cette opération est utilisée par le proxy Amazon ECR et n'est généralement pas utilisée par les utilisateurs pour extraire et envoyer des images.

## Amazon Redshift Spectrum
<a name="spectrum"></a>

**Principal :** rôle transmis à [CREATE EXTERNAL SCHEMA](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html) via `IAM_ROLE`

**Expiration par défaut :** 1 heure

Amazon Redshift Spectrum utilise le URLs présigné en interne [et interdit les restrictions sur la combinaison du compartiment et du rôle Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/spectrum-enhanced-vpc.html#spectrum-enhanced-vpc-considerations-policies) qui limiteraient le présigné. URLs Vous pouvez utiliser une `s3:signatureAge` valeur de 16 minutes, mais les valeurs très faibles ne sont pas fiables. La valeur minimale que vous pouvez utiliser dépend du moment et de la taille de votre requête. Bien qu'une valeur inférieure à 16 minutes fonctionne pour de nombreux scénarios, elle doit être testée. Le rôle peut et doit être limité à l'utilisation exclusive de Redshift Spectrum, qui ne divulgue pas ce URLs qu'il génère, atténuant ainsi la justification typique des valeurs d'expiration inférieures.

## Amazon SageMaker AI Studio
<a name="sagemaker-studio"></a>

Amazon SageMaker AI Studio prend en charge deux actions d'API : [CreatePresignedDomainUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedDomainUrl.html)et [CreatePresignedNotebookInstanceUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedNotebookInstanceUrl.html). Toutefois, elles APIs ne sont pas liées à la fonctionnalité d'URL présignée de Signature version 4. Ils APIs créent une URL qui utilise un `authToken` paramètre, mais ils ne prennent en charge aucun des paramètres de requête standard de Signature Version 4.

`authToken`est un mécanisme différent mais présente des similitudes avec le pré-signé URLs. Il est envoyé sous forme de paramètre de chaîne de requête et prend en charge un délai d'expiration de 5 minutes.

SageMaker L'IA prend en charge les restrictions du réseau. Si vous limitez l'`sagemaker:CreatePresignedDomainUrl`action, celle-ci s'applique à la fois à l'appel [CreatePresignedDomainUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedDomainUrl.html)et à l'utilisation de l'URL générée. Si une URL est générée à partir d'un réseau valide puis envoyée par un réseau non valide, l'appel d'API pour générer l'URL aboutit, mais la demande d'envoi de l'URL échoue. Il en va de [CreatePresignedNotebookInstanceUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedNotebookInstanceUrl.html)même pour l'`sagemaker:CreatePresignedNotebookInstanceUrl`action.

Pour plus d'informations, consultez la [documentation sur l'SageMaker IA](https://docs.aws.amazon.com/sagemaker/latest/dg/howitworks-access-ws.html).