Blog
So halten Sie Ihre OpenID connect Identitätsanbieter-Miniaturansichtsliste aktuell

Der AWS Open ID Connect-Anbieter ist eine großartige Möglichkeit, Drittanbieter-Identitäten den Zugriff
auf Ihr AWS-Konto zu gewähren. Und er ist sehr einfach zu konfigurieren. Sie benötigen nur den Domänennamen und
den Fingerabdruck des Zertifikats des Hosts, der die JSON Web Keys bereitstellt.
Aber die Beschaffung des Fingerabdrucks ist mühsam und erfordert drei Seiten schriftlicher Anweisungen.
Jedes Mal, wenn die Zertifikate erneuert werden, müssen Sie alles noch einmal machen.
Um dieses Problem zu lösen, können Sie mit dem Dienstprogramm aws-oidc-provider-refresher
die Liste der Fingerabdrücke automatisch aktuell halten.
die Fingerabdrücke aktualisieren
Um die Fingerabdrücke zu aktualisieren, geben Sie ein:
$ aws-oidc-provider-refresher --verbose
INFO: Found credentials in shared credentials file: ~/.aws/credentials
INFO: selecting all OIDC providers
INFO: new fingerprint 962828776ba4dc09a2a0a2b72ff9cd0bd8c33aee found of gitlab.com, subject CN=gitlab.com,O=Cloudflare, Inc.,L=San Francisco,ST=California,C=US issued by CN=Cloudflare Inc ECC CA-3,O=Cloudflare, Inc.,C=US
INFO: Would update 1 out of 1 OpenID connect providers, but no changes were made
Wie Sie sehen können, hat das Dienstprogramm noch keine Änderungen vorgenommen. Um zu aktualisieren, fügen Sie --force hinzu:
$ aws-oidc-provider-refresher --verbose --force
INFO: Found credentials in shared credentials file: ~/.aws/credentials
INFO: selecting all OIDC providers
INFO: new fingerprint 962828776ba4dc09a2a0a2b72ff9cd0bd8c33aee found of gitlab.com, subject CN=gitlab.com,O=Cloudflare, Inc.,L=San Francisco,ST=California,C=US issued by CN=Cloudflare Inc ECC CA-3,O=Cloudflare, Inc.,C=US
INFO: found 1 OpenID connect providers, 1 of which were updated.
So einfach ist das! Um sicherzustellen, dass die Thumbprint-Liste immer auf dem neuesten Stand ist, empfehlen wir
, den Refresher als AWS Lambda bereitzustellen:
als Lambda installieren
Um den Refresher als AWS Lambda zu installieren, geben Sie ein:
git clone https://github.com/binxio/aws-oidc-provider-refresher.git
cd aws-oidc-provider-refresher
aws cloudformation deploy
--capabilities CAPABILITY_IAM
--stack-name aws-oidc-provider-refresher
--template-file ./cloudformation/aws-oidc-provider-refresher.yaml
Dadurch wird der OIDC-Provider Refresher in Ihrem AWS-Konto installiert und jede Stunde ausgeführt. Um
aufzurufen, geben Sie manuell ein:
$ aws lambda invoke --function-name aws-oidc-provider-refresher
--query LogResult --output text
--payload $(base64 <<< '{"verbose": true, "dry_run": false}')
--log-type Tail /dev/fd/1 |
base64 -d
START RequestId: b7f362bf-659a-4890-9b19-790a9979439f Version: $LATEST
[INFO] 2022-09-17T07:49:01.058Z b7f362bf-659a-4890-9b19-790a9979439f Found credentials in environment variables.
[INFO] 2022-09-17T07:49:02.318Z b7f362bf-659a-4890-9b19-790a9979439f selecting all OIDC providers
[INFO] 2022-09-17T07:49:04.816Z b7f362bf-659a-4890-9b19-790a9979439f gitlab.com now has 2 thumbprints
[INFO] 2022-09-17T07:49:04.816Z b7f362bf-659a-4890-9b19-790a9979439f new fingerprint 962828776ba4dc09a2a0a2b72ff9cd0bd8c33aee found of gitlab.com, subject CN=gitlab.com,O=Cloudflare, Inc.,L=San Francisco,ST=California,C=US issued by CN=Cloudflare Inc ECC CA-3,O=Cloudflare, Inc.,C=US
[INFO] 2022-09-17T07:49:04.936Z b7f362bf-659a-4890-9b19-790a9979439f found 1 OpenID connect providers, 1 of which were updated.
END RequestId: b7f362bf-659a-4890-9b19-790a9979439f
REPORT RequestId: b7f362bf-659a-4890-9b19-790a9979439f Duration: 4089.85 ms Billed Duration: 4090 ms Memory Size: 128 MB Max Memory Used: 90 MB Init Duration: 453.23 ms
als CLI installieren
um das Dienstprogramm über die Befehlszeile zu installieren, geben Sie ein:
pip install aws-oidc-provider-refresher
Fazit
Mit dem OIDC Provider Refresher-Dienstprogramm als AWS Lambda in Ihrem Konto halten Sie die Thumbprint-Liste Ihrer OpenID Connect Identitätsanbieter in Ihrem Konto auf dem neuesten Stand.
Lesen Sie unseren vorherigen Beitrag, in dem beschrieben wird, wie Sie den Fingerabdruck in einer CloudFormation-Vorlage festlegen.
Foto von Luis Quintero auf Unsplash
Verfasst von

Mark van Holsteijn
Mark van Holsteijn is a senior software systems architect at Xebia Cloud-native solutions. He is passionate about removing waste in the software delivery process and keeping things clear and simple.
Contact