Tous les produits
Search
Centre de documentation

ApsaraVideo VOD:Signature de type A

Dernière mise à jour :Aug 10, 2026

ApsaraVideo VOD vous permet d'utiliser la fonctionnalité de signature d'URL pour protéger le contenu d'origine contre les téléchargements et les accès non autorisés. La signature d'URL prend en charge trois types de signature. Cette rubrique explique le fonctionnement de la signature de type A.

Fonctionnement

Principe de signature d'une URL selon le type A

http://DomainName/Filename?auth_key=timestamp-rand-uid-md5hash

Champs d'une URL signée

Field

Description

DomainName

Le nom de domaine pour ApsaraVideo VOD.

Filename

L'URL réelle qui pointe vers la ressource demandée sur le serveur d'origine. La valeur du champ Filename doit commencer par une barre oblique (/).

auth_key

La clé cryptographique que vous avez spécifiée.

timestamp

L'heure à laquelle une URL signée est générée. Le timestamp et la période de validité par défaut déterminent l'heure d'expiration de l'URL signée. L'heure est exprimée au format UTC+8 et suit le format AAAAMMJJHHMM.

Remarque

Dans la plupart des cas, une URL signée expire après l'écoulement de la période de validité par défaut que vous avez spécifiée dans ApsaraVideo VOD. Si vous spécifiez une période de validité pour une URL signée sur le serveur de signature, le timestamp et la période de validité de l'URL signée sont calculés selon la formule suivante : Timestamp = Timestamp UNIX sur le serveur de signature + Période de validité configurée sur le serveur de signature. Période de validité = Timestamp + Période de validité par défaut.

rand

Un nombre aléatoire. Dans la plupart des cas, la valeur de ce champ est définie sur 0. Pour générer une URL différente à chaque fois, nous vous recommandons d'utiliser un UUID. La valeur ne doit pas contenir de tirets (-). Exemple : 477b3bbc253f467b8def6711128c****.

uid

L'ID utilisateur. Définissez ce champ sur 0.

md5hash

La chaîne calculée à l'aide de l'algorithme MD5. Elle doit comporter 32 caractères et peut contenir des chiffres et des lettres minuscules.

md5hash est calculé à partir de la chaîne suivante :

sstring = "URI-timestamp-rand-uid-PrivateKey"
    md5hash = md5sum(sstring)
  • URI : le chemin relatif du fichier demandé, hors paramètres. Exemple : /Filename.

  • PrivateKey : la clé primaire ou la clé secondaire que vous avez configurée dans la console ApsaraVideo VOD. Pour plus d'informations, consultez Activer et configurer la signature d'URL.

  • md5sum : la fonction utilisée pour calculer la valeur de hachage MD5. Utilisez la fonction de calcul de hachage MD5 fournie par votre langage de développement.

Logique de signature

Lorsqu'un nœud de présence (POP) Alibaba Cloud CDN reçoit une requête, il vérifie si l'heure obtenue en additionnant les valeurs de timestamp et de la période de validité par défaut est antérieure à l'heure actuelle.

  • Si l'heure obtenue en additionnant les valeurs de timestamp et de la période de validité par défaut est antérieure à l'heure actuelle, le POP considère que l'URL a expiré et renvoie le code d'état HTTP 403.

  • Si l'heure obtenue en additionnant les valeurs de timestamp et de la période de validité par défaut est postérieure à l'heure actuelle, le POP génère une chaîne basée sur la variable sstring décrite dans le tableau précédent. Ensuite, il utilise l'algorithme MD5 pour calculer la valeur de md5hash et compare la valeur md5hash calculée avec la valeur md5hash présente dans la requête.

    • Si les deux valeurs diffèrent, l'authentification échoue. Le POP renvoie le code d'état HTTP 403.

    • Si les deux valeurs sont identiques, la requête passe l'authentification. Le POP renvoie la ressource demandée.

      Remarque

      Lorsque la requête passe l'authentification, les paramètres spécifiques à l'authentification sont supprimés de l'URL afin d'augmenter le taux de succès du cache et de réduire le trafic vers l'origine.

      • Le format de l'URL dans la requête de retour à l'origine est http://DomainName/FileName.

      • Le format de l'URL utilisée pour générer une clé de cache est http://DomainName/FileName.

Exemple de concaténation d'une URL signée

L'exemple suivant montre comment implémenter la signature de type A.

Conditions de l'exemple

  • Récupérez un objet depuis le serveur d'origine :

    http://example.aliyundoc.com/video/standard/test.mp4
    Remarque

    Si l'URL de l'objet récupéré depuis le serveur d'origine contient des caractères chinois, vous devez encoder l'URL avant de concaténer une URL signée.

  • Définissez PrivateKey sur aliyunvodexp1234.

  • Convertissez le timestamp de génération de l'URL signée, soit 2021-08-01 00:00:00 (UTC+8), en entier décimal 1627747200.

Procédure de concaténation

  1. Générez une chaîne de signature utilisée pour calculer la valeur de md5hash.

    /video/standard/test.mp4-1627747200-0-0-aliyunvodexp1234
  2. Calculez la valeur de md5hash à partir de la chaîne de signature.

    HashValue = md5sum("/video/standard/test.mp4-1627747200-0-0-aliyunvodexp1234") = 0e9048c8c7de46b6015618f42de7****
  3. Générez une URL signée.

    http://example.aliyundoc.com/video/standard/test.mp4?auth_key=1627747200-0-0-0e9048c8c7de46b6015618f42de7****

Lorsqu'un client utilise une URL signée pour demander une ressource, le POP compare la valeur md5hash calculée avec la valeur md5hash présente dans la requête. Si les deux valeurs sont identiques, par exemple 0e9048c8c7de46b6015618f42de7****, la requête passe l'authentification. Sinon, l'authentification échoue.