Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีใช้ Boto3 ดึงรายการ Secrets ทั้งหมดใน AWS Secrets Manager

ข้อกำหนดปัญหา: ใช้ไลบรารี boto3 ใน Python เพื่อดึงรายการ secrets ทั้งหมดใน AWS Secrets Manager

ขั้นตอนการแก้ปัญหา

  • ขั้นตอน 1: นำเข้า boto3 และ botocore.exceptions

  • ขั้นตอน 2: ไม่มีพารามิเตอร์สำหรับฟังก์ชันนี้

  • ขั้นตอน 3: สร้าง AWS session ด้วย boto3 พร้อมระบุ region_name

  • ขั้นตอน 4: สร้าง AWS client สำหรับ secretsmanager

  • ขั้นตอน 5: เรียกเมธอด list_secrets เพื่อดึงรายการ secrets ทั้งหมด

  • ขั้นตอน 6: คืนค่า metadata ของ secrets ทั้งหมด

  • ขั้นตอน 7: จัดการข้อยกเว้นทั่วไป

โค้ดตัวอย่าง

import boto3
from botocore.exceptions import ClientError

def get_all_secrets():
    session = boto3.session.Session()
    s3_client = session.client('secretsmanager')
    try:
        response = s3_client.list_secrets()
        return response
    except ClientError as e:
        raise Exception("boto3 client error in get_all_secrets: " + e.__str__())
    except Exception as e:
        raise Exception("Unexpected error in get_all_secrets: " + e.__str__())

a = get_all_secrets()
for details in a['SecretList']:
    print(details['Name'])

ผลลัพธ์

tests/secrets
tests/aws/secrets
tests/aws/users