समस्या विवरण - पायथन में boto3 लाइब्रेरी का उपयोग करके कैटलॉग की सुरक्षा कॉन्फ़िगरेशन/एन्क्रिप्शन सेटिंग्स प्राप्त करें।
उदाहरण - कैटलॉग की सुरक्षा कॉन्फ़िगरेशन/एन्क्रिप्शन सेटिंग्स प्राप्त करें।
इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदम
चरण 1 - अपवादों को संभालने के लिए boto3 और botocore एक्सेप्शन इम्पोर्ट करें।
चरण 2 - catalog_id वैकल्पिक पैरामीटर है। यदि प्रदान नहीं किया गया है, तो यह उपयोगकर्ता के AWS खाते का विवरण लेता है।
चरण 3 - boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि डिफ़ॉल्ट प्रोफ़ाइल में region_name का उल्लेख है। यदि नहीं है, तो सत्र बनाते समय region_name को स्पष्ट रूप से पास करें।
चरण 4 - glue के लिए AWS क्लाइंट बनाएं।
चरण 5 - अब get_data_catalog_encryption_settings फ़ंक्शन का उपयोग करें और catalog_id को CatalogId पैरामीटर के रूप में पास करें।
चरण 6 - यह एन्क्रिप्शन सेटिंग्स का विवरण वापस करता है।
चरण 7 - जॉब की जांच करते समय यदि कुछ गलत हुआ तो सामान्य अपवाद को संभालें।
उदाहरण
कैटलॉग की सुरक्षा कॉन्फ़िगरेशन/एन्क्रिप्शन सेटिंग्स प्राप्त करने के लिए निम्नलिखित कोड का उपयोग करें:
import boto3
from botocore.exceptions import ClientError
def retrieves_encryption_setting(catalog_id=None):
session = boto3.session.Session()
glue_client = session.client('glue')
try:
response = glue_client.get_data_catalog_encryption_settings(CatalogId=catalog_id)
return response
except ClientError as e:
raise Exception("retrieves_encryption_setting में boto3 क्लाइंट त्रुटि: " + e.__str__())
except Exception as e:
raise Exception("retrieves_encryption_setting में अप्रत्याशित त्रुटि: " + e.__str__())
print(retrieves_encryption_setting())
आउटपुट
{'DataCatalogEncryptionSettings': {'EncryptionAtRest': {'CatalogEncryptionMode': 'SSE-KMS'}, 'ConnectionPasswordEncryption': {'ReturnConnectionPasswordEncrypted': True}}, 'ResponseMetadata': {'RequestId': '5ffc0dbb...', 'HTTPStatusCode': 200, ...}}