[PYTHON] Lorsque j'ai créé un scan ECR à partir d'un CDK, je pouvais voir l'arrière du scan

en premier

Je n'ai jamais utilisé la fonction scan d'ECR, donc je l'ai fait avec CDK

Comment faire

Comme indiqué ci-dessous, vous pouvez utiliser la fonction d'analyse automatique en ajoutant simplement image_scan_on_push à l'argument de Repository. CDK pratique

from aws_cdk import (
    aws_ecr as ecr,
    core,
)

repository = ecr.Repository(self, "Repo",
    image_scan_on_push=True
)

Après avoir exécuté ce qui précède, ECR et ECRImageScanOnPush sont terminés.

$ cdk diff repo
...
Resources
[+] AWS::ECR::Repository Repo Repo02AC86CF 
[+] Custom::ECRImageScanOnPush Repo/ImageScanOnPush/Resource RepoImageScanOnPush94CFD98F 
[+] AWS::IAM::Role AWS679f53fac002430cb0da5b7982bd2287/ServiceRole AWS679f53fac002430cb0da5b7982bd2287ServiceRoleC1EA0FF2 
[+] AWS::IAM::Policy AWS679f53fac002430cb0da5b7982bd2287/ServiceRole/DefaultPolicy AWS679f53fac002430cb0da5b7982bd2287ServiceRoleDefaultPolicyD28E1A5E 
[+] AWS::Lambda::Function AWS679f53fac002430cb0da5b7982bd2287 AWS679f53fac002430cb0da5b7982bd22872D164C4C 
...

Lorsque j'ai vérifié auprès de la CLI si cela avait été réellement fait, j'ai pu confirmer qu'il était certainement fait Il comprenait également les paramètres de numérisation d'image

$ aws --region us-east-1 ecr describe-repositories | jq .
{
  "repositories": [
    {
      "repositoryArn": "arn:aws:ecr:us-east-1:000000000000:repository/repo-repo0-ny7qkwdk6aru",
      "registryId": "000000000000",
      "repositoryName": "repo-repo0-ny7qkwdk6aru",
      "repositoryUri": "000000000000.dkr.ecr.us-east-1.amazonaws.com/repo-repo0-ny7qkwdk6aru",
      "createdAt": 1589559800,
      "imageTagMutability": "MUTABLE",
      "imageScanningConfiguration": {
        "scanOnPush": true
      }
    }
  ]
}

De côté

J'ai terminé ce que je veux faire ci-dessus, mais lorsque j'ai créé la ressource, quelque chose d'autre que ECR a été créé comme indiqué ci-dessous. Vérifions si cela est également fait

[+] AWS::IAM::Role AWS679f53fac002430cb0da5b7982bd2287/ServiceRole AWS679f53fac002430cb0da5b7982bd2287ServiceRoleC1EA0FF2 
[+] AWS::IAM::Policy AWS679f53fac002430cb0da5b7982bd2287/ServiceRole/DefaultPolicy AWS679f53fac002430cb0da5b7982bd2287ServiceRoleDefaultPolicyD28E1A5E 
[+] AWS::Lambda::Function AWS679f53fac002430cb0da5b7982bd2287 AWS679f53fac002430cb0da5b7982bd22872D164C4C 

Tout d'abord, Lambda, mais il n'y avait aucune ressource écrite comme AWS

$ aws --region us-east-1 lambda list-functions | jq .Functions[].FunctionName | grep AWS
$ 

Vient ensuite le rôle IAM, mais ce n'est pas non plus disponible Je n'ai donc pas pu trouver la stratégie IAM associée.

$ aws --region us-east-1 iam list-roles | jq .Roles[].RoleName | grep AWS679f53fac002430cb0da5b7982bd2287
$ 

En d'autres termes, je pense qu'il y a des ressources du côté AWS plutôt que des ressources qui peuvent être définies et confirmées du côté de l'utilisateur. Je pense que ce sera probablement Lambda et son rôle IAM lors de la numérisation de l'ECR. Je pense que cela sera bientôt corrigé, mais je me sentais un peu familier avec l'intérieur d'AWS.

référence

Recommended Posts

Lorsque j'ai créé un scan ECR à partir d'un CDK, je pouvais voir l'arrière du scan
J'ai créé un robot Line qui devine le sexe et l'âge d'une personne à partir de l'image
Extension de Python par C ou C ++ (lorsqu'il y a plusieurs arguments, lors du passage d'une liste du côté Python)
J'ai créé une fonction pour voir le mouvement d'un tableau à deux dimensions (Python)
Création d'un bot Slack qui confirme et notifie à AWS Lambda la date d'expiration d'un certificat SSL
Quelles sont les caractéristiques des actrices audiovisuelles? J'ai deviné d'après le titre de l'oeuvre! (^ _ ^) / ~~
Dans le tutoriel Chainer, j'obtiens une erreur lors de l'importation d'un package. (moquer)
J'ai créé une commande appdo pour exécuter des commandes dans le contexte de l'application
Je souhaite voir une liste de fichiers WebDAV dans le module Requêtes
[Discode Bot] J'ai essayé de créer un Bot qui me dit la valeur de race de Pokemon
J'ai créé un outil pour sauvegarder automatiquement les métadonnées de l'organisation Salesforce
Une histoire sur un ingénieur venu uniquement du côté serveur a créé un portfolio