شعار زيفيرنت

استخدم أدوار وقت تشغيل IAM مع Amazon EMR Studio Workspaces وAWS Lake Formation للتحكم الدقيق في الوصول عبر الحسابات | خدمات الويب الأمازون

التاريخ:

ستوديو أمازون إي إم آر هي بيئة تطوير متكاملة (IDE) تسهل على علماء البيانات ومهندسي البيانات تطوير وتصور وتصحيح تطبيقات هندسة البيانات وعلوم البيانات المكتوبة بلغات R وPython وScala وPySpark. يوفر EMR Studio دفاتر ملاحظات وأدوات Jupyter مُدارة بالكامل مثل Spark UI وYARN Timeline Server عبر مساحات عمل EMR Studio. يمكنك إرفاق مساحة عمل EMR Studio بمجموعة EMR، واستخدام قوة الحوسبة لمجموعة EMR وتشغيل وظائف علوم البيانات في المجموعة. غالبًا ما يتم تخزين البيانات في بحيرات البيانات التي يديرها تكوين بحيرة AWS، مما يتيح لك تطبيق التحكم الدقيق في الوصول من خلال آلية منح أو إلغاء بسيطة.

نحن سعداء لتقديم أدوار وقت التشغيل لمساحات عمل استوديو EMR. يمكنك الآن تحديد دور وقت التشغيل وتعيينه لمجموعة EMR عند إرفاق مساحة عمل EMR Studio. ستستخدم المهام الموجودة في مجموعة EMR دور وقت التشغيل هذا للوصول إلى موارد AWS. بعد تكوين دور وقت التشغيل، يمكنك أيضًا استخدام Lake Formation وتطبيق التحكم الدقيق في الوصول إلى البيانات للمهام المرسلة بواسطة EMR Studio Workspace.

في السابق، عند إرفاق مساحات عمل EMR Studio بمجموعات EMR، كان يتعين على جميع مساحات العمل استخدام نفس الشيء إدارة الهوية والوصول AWS (IAM) - أي دور المجموعة الأمازون الحوسبة المرنة السحابية ملف تعريف المثيل (Amazon EC2). ولذلك، تتمتع كافة مساحات العمل المرتبطة بنفس مجموعة السجلات الطبية الإلكترونية (EMR) بنفس إمكانية الوصول إلى البيانات. للتحكم في الوصول إلى مصادر البيانات، كان يتعين على كل مساحة عمل EMR Studio استخدام مجموعة EMR مختلفة، وكانت هناك حاجة إلى ملفات تعريف متعددة لمثيلات EMR.

بدءًا من إصدار Amazon EMR 6.11، يمكنك الآن اختيار دور وقت التشغيل عند ربط مساحة عمل EMR Studio بمجموعة EMR. يقوم دور وقت التشغيل هذا بتحديد نطاق الوصول على مستوى مساحة العمل. سيكون لمهام Apache Livy وApache Spark التي يتم تشغيلها من مساحات عمل EMR Studio إذن للوصول فقط إلى البيانات والموارد التي تسمح بها السياسات المرتبطة بدور وقت التشغيل. وأيضًا، عند الوصول إلى البيانات من بحيرات البيانات المُدارة باستخدام Lake Formation، يمكنك فرض التحكم الدقيق في الوصول إلى البيانات باستخدام أذونات Lake Formation. وهذا يساعدك على تقليل النفقات التشغيلية.

في هذا المنشور، نوضح كيفية تكوين أدوار وقت التشغيل لمساحات عمل EMR Studio وإرفاق مساحة عمل بمجموعة EMR بأدوار وقت التشغيل. نظرًا لأن المؤسسات الكبيرة تستخدم عادةً حسابات AWS متعددة، وقد تحتاج العديد من هذه الحسابات إلى الوصول إلى بحيرة بيانات يديرها حساب AWS واحد، فإن مثالنا يستخدم حسابي AWS. نوضح كيفية التحكم في الوصول إلى أدوار وقت تشغيل EMR Studio، وإدارة الوصول إلى البيانات عبر الحسابات في بحيرة البيانات عبر Lake Formation، وفرض الأذونات على مستوى الجدول ومستوى العمود لأدوار وقت تشغيل EMR.

حل نظرة عامة

لتوضيح التحكم الدقيق في الوصول، قمنا بإنشاء عينة غراء AWS قاعدة بيانات باسم الشركة وإدارة إذن قاعدة البيانات في Lake Formation. تتكون قاعدة البيانات من جدولين منفصلين:

  • الموظفين – يخزن هذا الجدول معلومات عن موظفي الشركة، بما في ذلك رقم الموظف والاسم والقسم والراتب
  • منتج – يخزن هذا الجدول معلومات حول المنتجات التي تبيعها الشركة، بما في ذلك معرف المنتج والاسم والفئة والسعر

لإثبات التحكم في الوصول إلى البيانات، نأخذ في الاعتبار مستخدمي البيانات التاليين:

  • أليس، عالمة بيانات في فريق المبيعات – يجب أن يكون لديها حق الوصول للقراءة فقط إلى كافة الأعمدة الموجودة في الملف products الجدول والأعمدة المحددة، بما في ذلك uID والاسم والقسم في employees جدول
  • بوب، عالم بيانات في فريق الموارد البشرية – يجب أن يكون لديه حق الوصول للقراءة فقط إلى جميع الأعمدة الموجودة employees الجدول ولا ينبغي أن يكون الوصول إلى products جدول

لتوضيح مشاركة البيانات عبر الحسابات، نأخذ في الاعتبار حسابين:

  • حساب منتج البيانات - نشير إلى هذا الحساب باسم 123456789012 في هذا المنصب. يدير هذا الحساب البيانات الأولية في خدمة تخزين أمازون البسيطة (Amazon S3) ويكتب البيانات في بحيرة البيانات. ال company يجب أن تكون قاعدة البيانات والجداول في هذا الحساب.
  • حساب مستهلك البيانات - نشير إلى هذا الحساب باسم 111122223333 في هذا المنصب. يتم الوصول إلى هذا الحساب مباشرة من قبل المستخدمين لتحليل البيانات وليس لديه حق الوصول للكتابة إلى البيانات. يجب أن يكون بإمكان أليس وبوب الوصول إلى هذا الحساب.

يتم تنفيذ العمارة على النحو التالي:

  • يدير حساب منتج البيانات بحيرة البيانات. يتم تخزين البيانات الأولية في حاويات S3 وفهرستها في كتالوج بيانات AWS Glue.
  • تتحكم Lake Formation في حساب منتج البيانات في الوصول إلى البيانات عبر كتالوج البيانات، وتوفر مشاركة البيانات عبر الحسابات مع حساب مستهلك البيانات.
  • تحكم Lake Formation في حساب مستهلك البيانات الوصول عبر الحسابات إلى بحيرة البيانات على مستوى الجدول وأذونات Lake Formation الدقيقة. لمزيد من المعلومات، راجع طرق التحكم في الوصول الدقيق.
  • تستخدم مساحات عمل EMR Studio في حساب مستهلك البيانات أدوار وقت التشغيل عند تشغيل المهام على مجموعة EMR.
  • تتصل مجموعة EMR بكتالوج Glue Data في حساب مستهلك البيانات وتقوم بالاستعلام عن البيانات من بحيرة البيانات من خلال مشاركة البيانات عبر الحسابات.

يوضح الرسم البياني التالي هذه العمارة.

في الأقسام التالية، نستعرض خطوات مشاركة البيانات عبر الحسابات عبر Lake Formation، وتشغيل مساحة عمل EMR Studio مع أدوار وقت التشغيل، وإظهار التحكم الدقيق في الوصول.

المتطلبات الأساسية المسبقة

يجب أن يكون لديك المتطلبات الأساسية التالية:

إنشاء البنية التحتية في حساب منتج البيانات

أكمل الخطوات التالية لإنشاء موارد البنية التحتية:

  1. قم بتسجيل الدخول إلى حساب AWS لمنتج البيانات (123456789012).
  2. اختار قم بتشغيل Stack لنشر قالب CloudFormation لإنشاء الموارد اللازمة.
  3. في حالة DataLakeBucketSuffix، أدخل اللاحقة لحاوية S3 التي تستخدمها بحيرة البيانات. سيكون اسم حاوية S3 بالكامل الذي سيتم إنشاؤه هو {AwsAccoundId}-{AwsRegion}-{DataLakeBucketSuffix}.
  4. بعد إنشاء حزمة CloudFormation ، انتقل إلى ملف النواتج علامة تبويب المكدس والتقاط قيمة DataLakeS3Bucket لاستخدامها في الخطوة التالية.

قم بإنشاء ملفات البيانات وتحميلها إلى Amazon S3 في حساب منتج البيانات

قم بتكوين AWS CLI الخاص بك لاستخدام هوية IAM مع إذن للتحميل إلى DataLakeS3BucketName في حساب AWS لمنتج البيانات (123456789012)، أو يمكنك تسجيل الدخول إلى CloudShell باستخدام وحدة تحكم إدارة AWS. أكمل الخطوات التالية:

  1. على جهازك المحلي، انتقل إلى الدليل الذي تختاره باستخدام الأمر cd، على سبيل المثال، cd ~.
  2. تشغيل سيناريو مع chmod 744 create_sample_data.sh && ./create_sample_data.sh <DataLakeS3BucketName>.

سيقوم البرنامج النصي بإنشاء دليل فرعي tmp في دليل العمل الحالي، قم بإنشاء بيانات الاختبار في ملفات CSV، ثم قم بتحميل الملفات إلى ملف DataLakeS3BucketName دلو S3.

قم بإعداد Lake Formation في حساب منتج البيانات

في هذا القسم، نستعرض خطوات إعداد Lake Formation في حساب منتج البيانات.

قم بإعداد إعدادات إصدار مشاركة البيانات عبر الحسابات في Lake Formation

يدعم Lake Formation إصدارات متعددة لمشاركة البيانات. في هذا المنشور، نستخدم الإصدار 3. لمعرفة المزيد حول الاختلافات بين إصدارات مشاركة البيانات، راجع تحديث إعدادات إصدار مشاركة البيانات عبر الحسابات. لتغيير إصدار مشاركة البيانات، راجع لتمكين الإصدار الجديد.

قم بتسجيل موقع Amazon S3 كموقع لمستودع البيانات

عند قم بتسجيل موقع Amazon S3 باستخدام Lake Formation، يمكنك تحديد دور IAM مع أذونات القراءة/الكتابة في ذلك الموقع. بعد التسجيل، عندما تطلب مجموعات EMR الوصول إلى موقع Amazon S3 هذا، ستوفر Lake Formation بيانات اعتماد مؤقتة للدور المقدم للوصول إلى البيانات. لقد أنشأنا الدور بالفعل LakeFormationCompanyDatabaseDataAccessRole لهذا الغرض في الخطوة السابقة. لتسجيل موقع Amazon S3 كموقع مستودع البيانات، أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation باستخدام مسؤول بحيرة بيانات Lake Formation في حساب منتج البيانات (123456789012).
  2. في جزء التنقل ، اختر مواقع بحيرة البيانات مع الإدارة.
  3. اختار تسجيل الموقع.
  4. في حالة مسار Amazon S3، أدخل s3://<DataLakeS3BucketName>/company-database.
  5. في حالة دور IAM، أدخل LakeFormationCompanyDatabaseDataAccessRole.
  6. في حالة وضع الإذن، حدد تشكيل البحيرة.
  7. اختار تسجيل الموقع.

تسجيل موقع البيانات

إلغاء الأذونات الممنوحة لـ IAMAlowedPrincipals

IAMAllowedPrincipals تتضمن المجموعة أي مستخدمي وأدوار IAM مسموح لهم بالوصول إلى موارد كتالوج البيانات الخاصة بك من خلال سياسات IAM الخاصة بك. ل تطبيق نموذج تكوين البحيرة، نحن بحاجة إلى إلغاء الإذن من IAMAlowedPrincipals باتباع الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب منتج البيانات.
  2. في جزء التنقل ، اختر أذونات بحيرة البيانات ضمن الأذونات.
  3. تصفية الأذونات حسب Database = company و Principle=IAMAllowedPrinciples.
  4. حدد كافة الأذونات الممنوحة للمدير IAMAllowedPrincipals واختر سحب او إبطال.

إلغاء الأذونات الممنوحة لـ IAMAlowedPrincipals

قم بإعداد إعدادات تكامل التطبيق

لفرض أذونات لمجموعة EMR، تحتاج إلى تسجيل قيمة علامة الجلسة مع Lake Formation. يستخدم Lake Formation علامة الجلسة هذه للسماح للمتصلين وتوفير الوصول إلى بحيرة البيانات. نحن نسجل Amazon EMR كقيمة علامة الجلسة. سيتم الإشارة إلى هذه القيمة في التكوين الأمني عند إنشاء مجموعة EMR.

قم بإعداد علامة الجلسة باستخدام الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب منتج البيانات.
  2. اختار إعدادات تكامل التطبيق مع الإدارة في جزء التنقل.
  3. أختار السماح للمحركات الخارجية بتصفية البيانات في مواقع Amazon S3 المسجلة لدى Lake Formation.
  4. في حالة قيم علامة الجلسة، أدخل Amazon EMR.
  5. في حالة معرفات حساب AWS، أدخل معرف حساب AWS لمستهلك البيانات (111122223333).
  6. اختار حفظ.

قم بإعداد إعدادات تكامل التطبيق في حساب منتج البيانات

مشاركة قاعدة البيانات والجداول مع حساب مستهلك البيانات

نمنح الآن أذونات لحساب AWS لمستهلك البيانات، بما في ذلك الأذونات القابلة للمنح. يتيح ذلك لمسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات التحكم في الوصول إلى البيانات داخل الحساب.

منح أذونات قاعدة البيانات لحساب مستهلك البيانات

أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب منتج البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. حدد قاعدة البيانات company، وعلى الإجراءات القائمة ، تحت أذونات، اختر منحة.
  4. في مجلة الأساسية القسم، حدد الحسابات الخارجية وأدخل حساب AWS لمستهلك البيانات (111122223333).
  5. في مجلة LF- علامات أو موارد الكتالوج القسم، اختر company For قواعد بيانات.
  6. في مجلة أذونات قاعدة البيانات القسم، حدد وصف على حد سواء أذونات قاعدة البيانات و الأذونات الممنوحة.

يتيح ذلك لمسؤول Data Lake في حساب مستهلك البيانات وصف قاعدة البيانات ومنح أذونات الوصف لمديرين آخرين في حساب مستهلك البيانات.

  1. اختار منحة.

منح أذونات قاعدة البيانات لحساب مستهلك البيانات

منح أذونات الجدول لحساب مستخدم البيانات

أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب منتج البيانات.
  2. في جزء التنقل ، اختر طاولات الطعام.
  3. إختار ال products الجدول الذي ينتمي إليه company قاعدة البيانات، وعلى الإجراءات القائمة ، تحت أذونات، اختر منحة.
  4. في مجلة الأساسية القسم، حدد الحسابات الخارجية وأدخل في حساب AWS لمستهلك البيانات (111122223333).
  5. في مجلة LF- علامات أو موارد الكتالوج القسم، حدد موارد كتالوج البيانات المسماة وحدد ما يلي:
    1. في حالة قواعد بيانات، اختر company.
    2. في حالة طاولات الطعام، اختر products و employees.
  6. في مجلة أذونات الجدول القسم، اختر أختار و وصف على حد سواء أذونات الجدول و الأذونات الممنوحة.

يتيح ذلك لمسؤول Data Lake في حساب مستهلك البيانات تحديد الجداول ووصفها، ومنح أذونات تحديد ووصف الجدول لمديرين آخرين في حساب مستهلك البيانات.

  1. في مجلة أذونات البيانات القسم، حدد الوصول إلى جميع البيانات.
  2. اختار منحة.

منح أذونات الجدول لحساب مستخدم البيانات
لقد انتهينا الآن من إعداد حساب منتج البيانات.

قم بإعداد البنية التحتية في حساب مستهلك البيانات

أكمل الخطوات التالية لإنشاء موارد البنية التحتية:

  1. تسجيل الدخول إلى حساب مستهلك البيانات (111122223333).
  2. اختار إطلاق المكدس لنشر قالب CloudFormation لإنشاء الموارد اللازمة.
    قم بتشغيل Stack
  3. في حالة تحرير التسمية، أدخل ملصق إصدار Amazon EMR المراد استخدامه، والذي يمكن أن يكون فقط emr-6.11 أو أعلى.
  4. في حالة نوع الطلب، اختر نوع المثيل لمجموعة EMR، مثل r4.4xlarge.
  5. في حالة EMRS3BucketNameSuffix، أدخل لاحقة حاوية S3 لتخزين سجلات مجموعة EMR وملفات دفتر EMR. سيكون اسم حاوية S3 الكامل الذي سيتم إنشاؤه هو {AWSAccoundId}-{AWSRegion}-{EMRS3BucketNameSuffix}.
  6. في حالة شهادة S3PathToInTransit، أدخل مسار S3 لملف .zip الذي يحتوي على ملفات .pem المستخدمة للتشفير أثناء النقل.

للحصول على إرشادات حول إنشاء ملف .zip الذي يحتوي على ملفات .pem وتحميلها إلى حاوية S3 الخاصة بك، راجع توفير شهادات لتشفير البيانات أثناء النقل باستخدام تشفير Amazon EMR.

  1. بعد إنشاء حزمة CloudFormation ، انتقل إلى ملف النواتج علامة تبويب المكدس.
  2. التقاط قيمة EMRStudioLink لاستخدامه في تسجيل الدخول إلى EMR Studio.

اقبل مشاركة الموارد في حساب مستهلك البيانات

للوصول إلى الموارد المشتركة، يجب عليك قبول الدعوة أولاً.

  1. افتح وحدة تحكم AWS RAM لحساب مستهلك البيانات بهوية IAM التي تتمتع بإمكانية الوصول إلى AWS RAM.
  2. في جزء التنقل ، اختر مشاركات الموارد مع شارك معي.

يجب أن تشاهد مشاركتي موارد معلقتين من حساب منتج البيانات.

  1. قبول كل من مشاركات الموارد.

يجب أن ترى company قاعدة البيانات، employees الجدول، و products الجدول في كتالوج البيانات.

قم بإعداد Lake Formation في حساب مستخدم البيانات

في هذا القسم، نستعرض خطوات إعداد Lake Formation في حساب مستهلك البيانات.

قم بإعداد إعدادات تكامل التطبيق

على غرار الإعداد في حساب منتج البيانات، تحتاج إلى تسجيل Amazon EMR كعلامة جلسة. تتم الإشارة إلى هذه القيمة في التكوين الأمني عند إنشاء مجموعة EMR في مكدس CloudFormation.

للقيام بذلك، أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation باستخدام مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات (111122223333).
  2. اختار إعدادات تكامل التطبيق مع الإدارة في جزء التنقل.
  3. أختار السماح للمحركات الخارجية بتصفية البيانات في مواقع Amazon S3 المسجلة لدى Lake Formation.
  4. في حالة قيم علامة الجلسة، أدخل Amazon EMR.
  5. في حالة معرفات حساب AWS، أدخل معرف حساب AWS لمستهلك البيانات (111122223333).
  6. اختار حفظ.

قم بإعداد إعدادات تكامل التطبيق في حساب مستهلك البيانات

منح وصف الأذونات لأدوار وقت التشغيل في قاعدة البيانات الافتراضية

إذا لم تكن لديك قاعدة بيانات افتراضية في Lake Formation، أو أن قاعدة البيانات الافتراضية لديك لديها بالفعل أذونات لمنحها IAMAllowedPrinciples، يمكنك تخطي هذه الخطوة.

سوف يقوم Amazon EMR بالتحقق من قاعدة البيانات الافتراضية بشكل افتراضي. إذا كان لديك بالفعل قاعدة بيانات افتراضية في Lake Formation، فامنح إذن الوصف لأدوار وقت التشغيل في قاعدة البيانات الافتراضية عن طريق إكمال الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation باستخدام مستخدم مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. حدد قاعدة البيانات الافتراضية، وتأكد من أن معرف حساب المالك هو حساب مستهلك البيانات (111122223333) وعلى الإجراءات القائمة، اختر منحة.
  4. في مجلة قسم المبادئ، حدد مستخدمي IAM وأدوارها.
  5. في حالة مستخدمي IAM وأدوارها، اختر sales-runtime-role و human-resource-runtime-role.
  6. في حالة LF- علامات أو موارد الكتالوج، حدد موارد كتالوج البيانات المسماة واختر الافتراضي ل قواعد بيانات.
  7. في مجلة أذونات قاعدة البيانات القسم ل أذونات قاعدة البيانات، اختر وصف.
  8. اختار منحة.

منح وصف الأذونات لأدوار وقت التشغيل في قاعدة البيانات الافتراضية

إنشاء ارتباط مورد لقاعدة البيانات المشتركة

للوصول إلى قاعدة البيانات وموارد الجدول التي تمت مشاركتها بواسطة حساب AWS لمنتج البيانات، تحتاج إلى إنشاء ملف رابط الموارد في حساب AWS لمستهلك البيانات. ارتباط المورد هو كائن كتالوج البيانات الذي يمثل ارتباطًا بقاعدة بيانات أو جدول محلي أو مشترك. بعد إنشاء ارتباط مورد بقاعدة بيانات أو جدول، يمكنك استخدام اسم ارتباط المورد أينما تستخدم قاعدة البيانات أو اسم الجدول. في هذه الخطوة، يمكنك منح الإذن بارتباطات الموارد لمبادئ دور وقت التشغيل. ستقوم أدوار وقت التشغيل بعد ذلك بالوصول إلى البيانات الموجودة في قواعد البيانات المشتركة والجداول الأساسية من خلال رابط المورد.

لإنشاء ارتباط مورد ، أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. إختار ال company قاعدة البيانات، تأكد من أن معرف حساب المالك هو حساب منتج البيانات (123456789012) وعلى الإجراءات القائمة، اختر إنشاء روابط الموارد.
  4. في حالة اسم ارتباط المورد، أدخل اسم رابط المورد (على سبيل المثال، company-shared).
  5. في حالة منطقة قاعدة البيانات المشتركة، اختر المنطقة company قاعدة البيانات.
  6. في حالة قاعدة بيانات مشتركة، اختر قاعدة بيانات الشركة.
  7. في حالة معرف مالك قاعدة البيانات المشتركة، أدخل معرف الحساب الخاص بحساب منتج البيانات (123456789012).
  8. اختار إنشاء.

إنشاء ارتباط مورد لقاعدة البيانات المشتركة

منح الأذونات على رابط المورد لمبدأ دور وقت التشغيل

قم بمنح الأذونات على رابط المورد لدور وقت تشغيل المبيعات ودور وقت تشغيل المورد البشري باستخدام الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. حدد رابط المورد (company-shared) وعلى الإجراءات القائمة، اختر منحة.
  4. في مجلة الأساسية القسم، حدد مستخدمي IAM وأدوارها، و اختار sales-runtime-role و human-resource-runtime-role.
  5. في مجلة LF- علامات أو موارد الكتالوج القسم ل قواعد بيانات، اختر company-shared.
  6. في مجلة أذونات ارتباط الموارد القسم، حدد وصف.

يسمح هذا لأدوار وقت التشغيل بوصف رابط المورد. لا نقوم بإجراء أي تحديدات للأذونات القابلة للمنح لأن أدوار وقت التشغيل لا ينبغي أن تكون قادرة على منح الأذونات لمبادئ أخرى.

  1. اختار منحة.

منح الأذونات على رابط المورد لمبدأ دور وقت التشغيل

منح الإذن على الجداول لمبدأ دور وقت التشغيل

تحتاج إلى منح الأذونات على الجداول ل sales-runtime-role و human-resource-runtime-role للسماح بالوصول إلى البيانات:

  • Human-resource-runtime-role يجب أن يكون لديك وصف وتحديد الأذونات على كافة الأعمدة في employees الجدول، ولا توجد أذونات على products الجدول.
  • Sales-runtime-role يجب أن يكون لديك أذونات محددة على الأعمدة uid, nameو department في ال employees الجدول، ووصف وتحديد الأذونات على كافة الأعمدة في products الجدول.

منح الإذن على جدول الموظفين لدور وقت تشغيل الموارد البشرية

أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. حدد رابط المورد (company-shared) وعلى الإجراءات القائمة، اختر المنحة على الهدف.
  4. في مجلة قسم المبادئ، حدد مستخدمي IAM وأدوارها، ثم اختر human-resource-runtime-role.
  5. في مجلة LF- علامات أو موارد الكتالوج القسم، حدد موارد كتالوج البيانات المسماة وحدد ما يلي:
    1. في حالة قواعد بيانات، اختر company.
    2. في حالة طاولات الطعامأختر employees.
  6. في مجلة أذونات الجدول القسم ل أذونات الجدول، حدد وصف و أختار.
  7. في مجلة أذونات البيانات القسم، حدد الوصول إلى جميع البيانات.
  8. اختار منحة.

منح الإذن على جدول الموظفين لدور وقت تشغيل الموارد البشرية

منح الإذن على جدول الموظفين لدور وقت تشغيل المبيعات

أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. حدد رابط المورد (company-shared) وعلى الإجراءات القائمة، اختر المنحة على الهدف.
  4. في مجلة قسم المبادئ، حدد مستخدمي IAM وأدوارها، ثم اختر sales-runtime-role.
  5. في مجلة LF- علامات أو موارد الكتالوج القسم، حدد موارد كتالوج البيانات المسماة وحدد ما يلي:
    1. في حالة قواعد بيانات، اختر company.
    2. في حالة طاولات الطعام، اختر employees.
  6. في مجلة أذونات الجدول القسم ل أذونات الجدول، حدد أختار.
  7. في مجلة أذونات البيانات القسم، حدد الوصول المستند إلى العمود.
  8. أختار قم بتضمين الأعمدة واختيار uid, nameو department الأعمدة.
  9. اختار منحة.

منح الإذن على جدول الموظفين لدور وقت تشغيل المبيعات

منح الإذن في جدول المنتجات لدور وقت تشغيل المبيعات

أكمل الخطوات التالية:

  1. افتح وحدة تحكم Lake Formation مع مسؤول بحيرة بيانات Lake Formation في حساب مستهلك البيانات.
  2. في جزء التنقل ، اختر قواعد بيانات.
  3. حدد رابط المورد (company-shared) وعلى الإجراءات القائمة، اختر المنحة على الهدف.
  4. في مجلة قسم المبادئ، حدد مستخدمي IAM وأدوارها، ثم اختر sales-runtime-role.
  5. في مجلة LF- علامات أو موارد الكتالوج القسم، حدد موارد كتالوج البيانات المسماة وحدد ما يلي:
    1. في حالة قواعد بيانات، اختر company.
    2. في حالة طاولات الطعام، اختر products.
  6. في مجلة أذونات الجدول القسم ل أذونات الجدول، حدد أختار و وصف.
  7. في مجلة أذونات البيانات القسم، حدد الوصول إلى جميع البيانات.
  8. اختار منحة.

منح الإذن في جدول المنتجات لدور وقت تشغيل المبيعات

قم بتسجيل الدخول إلى EMR Studio واستخدم مساحة عمل EMR Studio

بدل دورك إلى alice-role or bob-role على وحدة التحكم باستخدام متصفحات ويب مختلفة لاختبار الوصول. افتح ال EMRStudioLink عنوان URL من مخرجات مكدس CloudFormation لتسجيل الدخول إلى EMR Studio بكل دور، ثم أكمل الخطوات التالية:

  1. اختار مساحات العمل في جزء التنقل واختر قم بإنشاء مساحة عمل.
  2. أدخل اسمًا ووصفًا لمساحة العمل.
  3. اختار قم بإنشاء مساحة عمل.

سيتم فتح علامة تبويب جديدة تحتوي على JupyterLab تلقائيًا عندما تصبح مساحة العمل جاهزة. قم بتمكين النوافذ المنبثقة في متصفحك إذا لزم الأمر.

  1. اختار ال إحصاء في جزء التنقل لإرفاق مساحة عمل EMR Studio بمحرك حسابي.
  2. أختار مجموعة السجلات الطبية الإلكترونية على EC2 For نوع الحساب.
  3. اختر معرف مجموعة EMR الذي قمت بإنشائه باستخدام AWS CloudFormation.
  4. في حالة دور وقت التشغيل، اختر sales-runtime-role إذا قمت بتسجيل الدخول باسم alice-role. أختر human-resource-runtime-role إذا قمت بتسجيل الدخول باسم bob-role.
  5. اختار تعلق.

قم بإرفاق مساحة عمل EMR Studio بالمجموعة

قم بتشغيل التعليمات البرمجية في مساحة عمل EMR Studio وتحقق من الوصول إلى البيانات

قم بتشغيل التعليمات البرمجية التالية في EMR Studio Workspace باستخدام PySpark kernel بعد تسجيل الدخول باستخدام alice-role أو bob-role:

%%sql -o result -n -1
select * from `company-shared`.products limit 5; %%sql -o result -n -1
select * from `company-shared`.employees limit 5;

يجب أن ترى نتائج مختلفة عند استخدام أدوار مختلفة.

وفقًا لتكوين الوصول إلى البيانات الخاص بنا في Lake Formation، سيكون لدى Alice حق الوصول الكامل إلى البيانات لـ products طاولة. يمكنها عرض جميع الأعمدة باستثناء الراتب في employees الجدول.

نتيجة استعلام أليس (المبيعات).

بالنسبة لبوب، وفقًا لتكوين الوصول إلى البيانات الخاص بنا في Lake Formation، سيكون لديه حق الوصول الكامل إلى البيانات employees الجدول، ولكن ليس لديه إمكانية الوصول إلى products الجدول.

نتيجة استعلام بوب (الموارد البشرية).

تنظيف

عندما تنتهي من تجربة هذا الحل ، قم بتنظيف مواردك:

  1. قم بإيقاف وحذف مساحات عمل EMR Studio التي تم إنشاؤها في حساب AWS لمستهلك البيانات.
  2. احذف كافة المحتويات الموجودة في حاوية S3 EMRS3Bucket في حساب AWS لمستهلك البيانات.
  3. احذف مكدس CloudFormation في حساب AWS لمستهلك البيانات.
  4. احذف كافة المحتويات الموجودة في حاوية S3 DataLakeS3Bucket في حساب منتج البيانات AWS.
  5. احذف مكدس CloudFormation في حساب AWS لمنتج البيانات.

وفي الختام

أظهر هذا المنشور كيف يمكنك استخدام أدوار وقت التشغيل للاتصال بمساحة عمل EMR Studio مع Amazon EMR لتطبيق التحكم الدقيق في الوصول إلى البيانات عبر الحسابات باستخدام Lake Formation. لقد أظهرنا أيضًا كيف يمكن للعديد من مستخدمي EMR Studio الاتصال بنفس مجموعة EMR، كل منهم يستخدم دور وقت التشغيل المحدد بأذونات تتوافق مع مستوى وصولهم الفردي إلى البيانات.

لمعرفة المزيد حول استخدام مساحات عمل EMR Studio مع Lake Formation، راجع قم بتشغيل مساحة عمل EMR Studio مع دور وقت التشغيل. نحن نشجعك على تجربة هذه الوظيفة الجديدة، والتواصل معنا إذا كانت لديك أي أسئلة أو تعليقات!


حول المؤلف

اشلي تشو هو مهندس تطوير البرمجيات في AWS. وهي مهتمة بتحليلات البيانات والأنظمة الموزعة.

سريفديا بارثاساراثي هو كبير مهندسي البيانات الضخمة في فريق AWS Lake Formation. تستمتع ببناء تحليلات وحلول شبكات البيانات على AWS ومشاركتها مع المجتمع.

بقعة_صورة

أحدث المعلومات الاستخباراتية

بقعة_صورة