Prisma Cloud El análisis del Registro de cómputo muestra '429 Too Many Request (HAP429)'

Prisma Cloud El análisis del Registro de cómputo muestra '429 Too Many Request (HAP429)'

12662
Created On 05/19/22 02:37 AM - Last Modified 03/02/23 01:56 AM


Symptom


  • Al iniciar el análisis del registro, se muestra el siguiente error:
failed to retrieve repository TESTORG* tags, error failed to query https://registry-1.docker.io/v2/TESTORG*/tags/list, error failed to query https://registry-1.docker.io/v2/TESTORG*/tags/list, Too Many Requests Too Many Requests (HAP429)

Captura de pantalla 2022-05-19 a las 10.27.55 AM-min.png
 
 


Environment


  • Prisma Cloud Calcular
    • Autohospedado
    • Saas
  • Registro de Docker Hub


Cause


  • 429 indica que se envían demasiadas solicitudes en un período de tiempo determinado (limitación de velocidad).
  • Cuando emite una solicitud de extracción y supera el límite para su tipo de cuenta, Docker Hub devolverá un código de respuesta 429 cuando se solicite el manifiesto.
  • Docker Hub limita el número de descargas de imágenes de Docker ("extracción") en función del tipo de cuenta del usuario que extrae la imagen.
  • Los límites de la tasa de extracción se basan en direcciones individuales IP .
  • Para los usuarios anónimos, el límite de velocidad se establece en 100 extracciones cada 6 horas por IP dirección.
  • Para los usuarios autenticados, es de 200 extracciones por período de 6 horas. No hay límites para los usuarios con una suscripción de pago a Docker.


Resolution


  • Establezca Cap en "1" para escanear las imágenes más recientes del Registro. El valor predeterminado de 5 escaneará las 5 imágenes más recientes. Si establece este campo en 0, se escanearán todas las imágenes.
  • Aumente la frecuencia de escaneo desde Administrar > sistema > Escanear. De forma predeterminada, Prisma Cloud analiza el Registro cada 24 horas. Aumente a 72 horas o más según el escenario.
  • Aumente el límite de velocidad en el Docker.


Additional Information


El proceso de Defender para escanear la imagen del Registro

  • La imagen es extraída por el defensor para realizar el escaneo.
  • Una vez que se complete el escaneo, la imagen se eliminará.
  • Los registros de Defender muestran lo mismo:
    • Análisis de la imagen

    • Extracción de la imagen

    • Escaneo de la imagen

    • Eliminación de la imagen

DEBU 2022-03-18T21:49:35.559 scanner.go:145 Analyzing image testimage/test latest:sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a

DEBU 2022-03-18T21:49:35.559 scanner.go:161 Pulling registry image id: sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a tag: test.io/testimage/test:latest

DEBU 2022-03-18T21:49:54.610 scanner.go:167 Pull image tag:test.io/testimage/test:latest id: sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a completed after 19.051067993 seconds

DEBU 2022-03-18T21:49:54.618 scanner.go:100 Image scanning started sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a

DEBU 2022-03-18T21:49:54.619 containerized_runner.go:69 Containerized scan started sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a

DEBU 2022-03-18T21:50:54.066 containerized_runner.go:270 Containerized scan completed sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a 59.45 [sec]

DEBU 2022-03-18T21:50:54.103 augment_static.go:218 sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a [augment] 59.49 [sec]

DEBU 2022-03-18T21:50:54.105 scanner.go:218 Image test.io/testimage/test:latest sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a [scanning] 59.49 [sec]

DEBU 2022-03-18T21:50:54.105 scanner.go:221 Scan for image tag:test.io/testimage/test:latest id: sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a completed after 78.545885826 seconds

DEBU 2022-03-18T21:50:54.105 scanner.go:409 Removing image sha256:3a11abed3c123456789023d23b7d0e828c939a4284512345678902138aa3f76a

Cómo verificar el límite de velocidad tirando de la imagen

  • Cuando emite una solicitud de extracción y supera el límite para su tipo de cuenta, Docker Hub devolverá un código de respuesta 429 con el siguiente cuerpo cuando se solicite el manifiesto:
You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limits

¿Cómo puedo I consultar mi tarifa actual?

ratelimit-limit    
ratelimit-remaining
  • Estos encabezados se devolverán tanto en las solicitudes como HEAD en las GET solicitudes. Tenga en cuenta que usar GET emula un tirón real y contará para el límite; usar HEAD no lo hará, por lo que lo usaremos en este ejemplo. Para verificar sus límites, necesitará curl, grep y jq instalados.
  • Para obtener un token de forma anónima (si está extrayendo de forma anónima):
$ TOKEN=$(curl "https://auth.docker.io/token?service=registry.docker.io&scope=repository:ratelimitpreview/test:pull" | jq -r .token)
  • Para obtener un token con una cuenta de usuario (si está autenticando sus extracción), no olvide insertar su nombre de usuario y contraseña en el siguiente comando:

$ TOKEN=$(curl --user 'username:password' "https://auth.docker.io/token?service=registry.docker.io&scope=repository:ratelimitpreview/test:pull" | jq -r .token)
  • Luego, para que los encabezados muestren sus límites, ejecute lo siguiente:

$ curl --head -H "Authorization: Bearer $TOKEN" https://registry-1.docker.io/v2/ratelimitpreview/test/manifests/latest
  • Lo que debería devolver encabezados que incluyen estos:

ratelimit-limit: 100;w=21600
ratelimit-remaining: 76;w=21600
  • Esto significa que mi límite es de 100 tirones por 21600 segundos (6 horas), y I tengo 76 tirones restantes.
Image.png

Nota: Recuerde que estos encabezados son el mejor esfuerzo y puede haber pequeñas variaciones.
 
 


Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000CpdiCAC&lang=es&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language