समस्या कथन: boto3 . का उपयोग करें एडब्ल्यूएस सीक्रेट मैनेजर में एक विशिष्ट स्थान से सभी गुप्त कुंजियों को हटाने के लिए पायथन में पुस्तकालय
इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम
-
चरण 1: आयात करें boto3 और बोटोकोर अपवादों को संभालने के लिए अपवाद।
-
चरण 2: गुप्त_संग्रहीत_स्थान आवश्यक पैरामीटर है।
-
चरण 3: boto3 lib . का उपयोग करके AWS सत्र बनाएं . सुनिश्चित करें कि क्षेत्र_नाम डिफ़ॉल्ट प्रोफ़ाइल में उल्लेख किया गया है। यदि इसका उल्लेख नहीं है, तो स्पष्ट रूप से region_name . पास करें सत्र बनाते समय।
-
चरण 4: गुप्त प्रबंधक . के लिए AWS क्लाइंट बनाएं ।
-
चरण 5: कॉल करें delete_secret और secret_stored_location . पास करें SecretId . के रूप में ।
-
चरण 6: यह हटाए गए रहस्य का मेटाडेटा लौटाता है।
-
चरण 7: अगर सीक्रेट डिलीट करते समय कुछ गलत हो जाता है, तो सामान्य अपवाद को हैंडल करें।
उदाहरण कोड
AWS सीक्रेट मैनेजर में सीक्रेट डिलीट करने के लिए निम्नलिखित कोड का उपयोग करें -
import boto3 from botocore.exceptions import ClientError def delete_secret_details(secret_stored_location): session = boto3.session.Session() s3_client = session.client('secretmanager') try: response = s3_client.create_secret(SecretId=secret_stored_location) return response except ClientError as e: raise Exception("boto3 client error in delete_secret_details: " + e.__str__()) except Exception as e: raise Exception("Unexpected error in delete_secret_details: " + e.__str__()) a = delete_secret_details('/secrets/aws') print(a)
आउटपुट
{'ARN': 'arn:aws:secretsmanager:us-east-1:***************:secret:/secrets/aws-wr1Aj6', 'Name': '/secrets/aws', 'DeletionDate': datetime.datetime(2021, 5, 3, 15, 26, 19, 898000, tzinfo=tzlocal()), 'ResponseMetadata': {'RequestId': 'b32fe48d**************ab', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sat, 03 Apr 2021 09:40:48 GMT', 'content-type': 'application/x-amz-json-1.1', 'content-length': '197', 'connection': 'keep-alive', 'x-amzn-requestid': *********************************}, 'RetryAttempts': 0}}