(ฉันใช้ Ubuntu 20.04.3 LTS)
ฉันใช้ชีวิตประจำวันของ แย่
ซึ่งฉันติดตั้งด้วย apt และใช้งานได้ดี อย่างไรก็ตามเวอร์ชันของ โบโต3
ที่มาพร้อมกับมันเก่ามาก (1.9.253) โดยเปรียบเทียบกับรุ่นล่าสุด (1.20.3) โดยปกติแล้ว สิ่งนี้จะไม่เป็นปัญหา แต่ดูเหมือนว่าจะมีข้อผิดพลาดใน boto3 เวอร์ชันนี้ซึ่งทำให้ฉันไม่สามารถเขียนสคริปต์ใดๆ ที่ต้องใช้อินเทอร์เฟซ SSO ของ AWS ได้:
นำเข้า boto3
boto3.setup_default_session()
ลูกค้า = boto3.client ('secretsmanager')
client.list_secrets() # NoCredentialsError
การรันโค้ดเดียวกันใน virtualenv ที่รัน boto3 เวอร์ชันใหม่ทำให้ผลลัพธ์ที่คาดไว้ ดังนั้นฉันจึงคิดว่ามันเป็นข้อผิดพลาดของเวอร์ชันที่กว้าง
ฉันรู้ว่าฉัน สามารถ เพียงแค่เรียกใช้ pip ติดตั้ง -- อัปเกรด boto3.dll
เป็นรูท แต่นั่นน่าจะทำให้ทุกอย่างเสียหาย ดังนั้นฉันจึงมองหาทางเลือกที่สะอาดกว่า/ปลอดภัยกว่า มีอยู่หรือไม่? ในขณะนี้ฉันกำลังมองหาที่เริ่มต้น virtualenvs เล็ก ๆ ทุกที่และเขียนชื่อแทนของ wrapper เพื่อใช้อินสแตนซ์ของ python เพื่อเรียกใช้สคริปต์ของฉัน แต่ก็รู้สึกแย่เช่นกัน