কম্পিউটার টিউটোরিয়াল

Boto3 ব্যবহার করে AWS Secret Manager-এ প্লেইন টেক্সট হিসেবে সিক্রেট কী তৈরি করা


সমস্যা: পাইথনে boto3 লাইব্রেরি ব্যবহার করে AWS Secret Manager-এ প্লেইন টেক্সট হিসেবে সিক্রেট কী তৈরি করা।

পদ্ধতি/অ্যালগরিদম

  • ধাপ ১: boto3 এবং botocore এক্সেপশন ইম্পোর্ট করুন এক্সেপশন হ্যান্ডল করার জন্য।

  • ধাপ ২: secret_stored_location এবং secret_key_pair আবশ্যিক প্যারামিটার। এটি সিক্রেট সংরক্ষণের জায়গা দেওয়া কী-পেয়ার ভ্যালু সহ। নিশ্চিত করুন secret_key_pair স্ট্রিং হিসেবে লেখা হয়েছে, ডিকশনারি হিসেবে নয়। উদাহরণ: '{key:pair}'

  • ধাপ ৩: boto3 লাইব্রেরি ব্যবহার করে AWS সেশন তৈরি করুন। নিশ্চিত করুন region_name ডিফল্ট প্রোফাইলে আছে। না থাকলে সেশন তৈরি করার সময় সিদ্ধা region_name পাস করুন।

  • ধাপ ৪: secretmanager-এর জন্য AWS ক্লায়েন্ট তৈরি করুন।

  • ধাপ ৫: create_secret কল করুন এবং secret_stored_location কে Name এবং secret_key_pair কে SecretString প্যারামিটার হিসেবে পাস করুন।

  • ধাপ ৬: এটি যোগ করা সিক্রেটের মেটাডেটা রিটার্ন করে।

  • ধাপ ৭: সিক্রেট তৈরি করার সময় যদি কোনো সমস্যা হয় তবে জেনেরিক এক্সেপশন হ্যান্ডল করুন।

উদাহরণ কোড

AWS Secret Manager-এ সিক্রেট তৈরি করতে নিচের কোডটি ব্যবহার করুন:

import boto3
from botocore.exceptions import ClientError

def create_secret_details(secret_stored_location, secret_key_pair:str):
    session = boto3.session.Session()
    s3_client = session.client('secretmanager')
    try:
        response = s3_client.create_secret(Name=secret_stored_location, SecretString=secret_key_pair)
        return response
    except ClientError as e:
        raise Exception("boto3 client error in create_secret_details: " + e.__str__())
    except Exception as e:
        raise Exception("Unexpected error in create_secret_details: " + e.__str__())

details = '{"user_test":"test"}'
a = create_secret_details('/secrets/aws', details)
print(a)

আউটপুট

{'ARN': 'arn:aws:secretsmanager:us-east-1:***************:secret:/secrets/aws-wr1Aj6', 'Name': '/secrets/aws', 'VersionId': 'fcdc1b5b-2a35-4d12-9d84-65d529651d2e', '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}}

  1. Boto3 ব্যবহার করে AWS Data Catalog থেকে একটি ওয়ার্কফ্লো ডিলিট করা

  2. Boto3 ব্যবহার করে AWS Glue থেকে একটি Glue Job ডিলিট করা

  3. Boto3 এবং AWS Client ব্যবহার করে Wait ফাংশনালিটি দিয়ে S3 বাকেটে একটি কী আছে কিনা চেক করা

  4. Boto3 লাইব্রেরি ব্যবহার করে Python-এ AWS সেশন তৈরি করার পদ্ধতি