Phòng thu âm Amazon EMR là một môi trường phát triển tích hợp (IDE) giúp các nhà khoa học dữ liệu và kỹ sư dữ liệu dễ dàng phát triển, trực quan hóa và gỡ lỗi các ứng dụng khoa học dữ liệu và kỹ thuật dữ liệu được viết bằng R, Python, Scala và PySpark. EMR Studio cung cấp các công cụ và sổ ghi chép Jupyter được quản lý hoàn toàn như Spark UI và YARN Timeline Server thông qua EMR Studio Workspaces. Bạn có thể đính kèm Không gian làm việc EMR Studio vào cụm EMR và sử dụng sức mạnh tính toán của cụm EMR cũng như chạy các công việc khoa học dữ liệu trên cụm. Dữ liệu thường được lưu trữ trong các hồ dữ liệu được quản lý bởi Sự hình thành hồ AWS, cho phép bạn áp dụng kiểm soát quyền truy cập chi tiết thông qua cơ chế cấp hoặc thu hồi đơn giản.
Chúng tôi vui mừng giới thiệu vai trò thời gian chạy cho không gian làm việc của EMR Studio. Giờ đây, bạn có thể xác định vai trò thời gian chạy và gán nó cho cụm EMR khi đính kèm Không gian làm việc EMR Studio. Các công việc trên cụm EMR sẽ sử dụng vai trò thời gian chạy này để truy cập tài nguyên AWS. Sau khi định cấu hình vai trò thời gian chạy, bạn cũng có thể sử dụng Lake Formation và áp dụng biện pháp kiểm soát quyền truy cập dữ liệu chi tiết cho các công việc do EMR Studio Workspace gửi.
Trước đây, khi gắn EMR Studio Workspaces vào các cụm EMR, tất cả các Workspaces đều phải sử dụng chung một Quản lý truy cập và nhận dạng AWS (IAM)—cụ thể là, của cụm Đám mây điện toán đàn hồi Amazon Hồ sơ phiên bản (Amazon EC2). Do đó, tất cả các Không gian làm việc được gắn vào cùng một cụm EMR đều có cùng quyền truy cập dữ liệu. Để kiểm soát quyền truy cập vào các nguồn dữ liệu, mỗi EMR Studio Workspace phải sử dụng một cụm EMR khác nhau và cần có nhiều cấu hình phiên bản EMR.
Bắt đầu từ việc phát hành Amazon EMR 6.11, giờ đây bạn có thể chọn vai trò thời gian chạy khi gắn Không gian làm việc EMR Studio vào cụm EMR. Vai trò thời gian chạy này giới hạn quyền truy cập ở cấp Không gian làm việc. Các công việc Apache Livy và Apache Spark chạy từ EMR Studio Workspaces sẽ chỉ có quyền truy cập vào dữ liệu và tài nguyên được các chính sách gắn liền với vai trò thời gian chạy cho phép. Ngoài ra, khi dữ liệu được truy cập từ hồ dữ liệu được quản lý bằng Lake Formation, bạn có thể thực thi kiểm soát truy cập dữ liệu chi tiết bằng cách sử dụng quyền Lake Formation. Điều này giúp bạn giảm chi phí hoạt động.
Trong bài đăng này, chúng tôi trình bày cách định cấu hình các vai trò thời gian chạy cho Không gian làm việc EMR Studio và đính kèm Không gian làm việc vào cụm EMR với các vai trò thời gian chạy. Vì các doanh nghiệp lớn thường sử dụng nhiều tài khoản AWS và nhiều tài khoản trong số đó có thể cần quyền truy cập vào kho dữ liệu do một tài khoản AWS duy nhất quản lý nên ví dụ của chúng tôi sử dụng hai tài khoản AWS. Chúng tôi giải thích cách kiểm soát quyền truy cập vào các vai trò thời gian chạy EMR Studio, quản lý quyền truy cập dữ liệu trên các tài khoản trong hồ dữ liệu thông qua Lake Formation, đồng thời thực thi các quyền ở cấp độ bảng và cấp cột đối với các vai trò thời gian chạy EMR.
Tổng quan về giải pháp
Để chứng minh khả năng kiểm soát truy cập chi tiết, chúng tôi tạo một mẫu Keo AWS cơ sở dữ liệu có tên công ty và quản lý quyền cơ sở dữ liệu trong Lake Formation. Cơ sở dữ liệu bao gồm hai bảng riêng biệt:
- nhân viên – Bảng này lưu trữ thông tin về nhân viên của công ty, bao gồm ID nhân viên, tên, bộ phận và mức lương
- sản phẩm – Bảng này lưu trữ thông tin về các sản phẩm công ty bán gồm ID sản phẩm, tên, chủng loại, giá cả
Để chứng minh khả năng kiểm soát quyền truy cập dữ liệu, chúng tôi xem xét những người dùng dữ liệu sau:
- Alice, nhà khoa học dữ liệu trong nhóm bán hàng – Cô ấy có quyền truy cập chỉ đọc vào tất cả các cột trong
products
bảng và các cột được chọn, bao gồm uID, tên và bộ phận trongemployees
bàn - Bob, một nhà khoa học dữ liệu trong nhóm nhân sự – Anh ta phải có quyền truy cập chỉ đọc vào tất cả các cột trong
employees
bảng và không có quyền truy cập vàoproducts
bàn
Để chứng minh việc chia sẻ dữ liệu giữa các tài khoản, chúng tôi xem xét hai tài khoản:
- Tài khoản nhà sản xuất dữ liệu – Chúng tôi gọi tài khoản này là
123456789012
trong bài đăng này. Tài khoản này quản lý dữ liệu thô trong Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) và ghi dữ liệu vào hồ dữ liệu. Cáccompany
cơ sở dữ liệu và bảng phải có trong tài khoản này. - Tài khoản người tiêu dùng dữ liệu – Chúng tôi gọi tài khoản này là
111122223333
trong bài đăng này. Tài khoản này được người dùng truy cập trực tiếp để phân tích dữ liệu và không có quyền ghi vào dữ liệu. Tài khoản này có thể được truy cập bởi Alice và Bob.
Kiến trúc được triển khai như sau:
- Tài khoản nhà sản xuất dữ liệu quản lý một hồ dữ liệu. Dữ liệu thô được lưu trữ trong bộ chứa S3 và được phân loại trong Danh mục dữ liệu AWS Glue.
- Lake Formation trong tài khoản nhà sản xuất dữ liệu sẽ quản lý quyền truy cập dữ liệu thông qua Danh mục dữ liệu và cung cấp tính năng chia sẻ dữ liệu giữa các tài khoản với tài khoản người tiêu dùng dữ liệu.
- Lake Formation trong tài khoản người dùng dữ liệu quản lý quyền truy cập của nhiều tài khoản vào hồ dữ liệu ở cấp độ bảng và các quyền chi tiết hơn của Lake Formation. Để biết thêm thông tin, hãy tham khảo Các phương pháp kiểm soát truy cập chi tiết.
- Không gian làm việc EMR Studio trong tài khoản người tiêu dùng dữ liệu sử dụng các vai trò thời gian chạy khi chạy công việc trên cụm EMR.
- Cụm EMR kết nối với Danh mục dữ liệu Keo trong tài khoản người tiêu dùng dữ liệu và truy vấn dữ liệu từ hồ dữ liệu thông qua chia sẻ dữ liệu giữa các tài khoản.
Sơ đồ sau minh họa kiến trúc này.
Trong các phần sau, chúng tôi sẽ thực hiện các bước để chia sẻ dữ liệu giữa các tài khoản thông qua Lake Formation, chạy Không gian làm việc EMR Studio với các vai trò thời gian chạy và thể hiện khả năng kiểm soát truy cập chi tiết.
Điều kiện tiên quyết
Bạn nên có các điều kiện tiên quyết sau:
Tạo cơ sở hạ tầng trong tài khoản nhà sản xuất dữ liệu
Hoàn thành các bước sau để tạo tài nguyên cơ sở hạ tầng:
- Đăng nhập vào tài khoản AWS của nhà sản xuất dữ liệu (
123456789012
). - Chọn Khởi chạy Stack để triển khai mẫu CloudFormation nhằm tạo các tài nguyên cần thiết.
- Trong Dữ LiệuHồXôSuffix, hãy nhập hậu tố cho nhóm S3 được hồ dữ liệu sử dụng. Toàn bộ tên nhóm S3 được tạo sẽ là
{AwsAccoundId}-{AwsRegion}-{DataLakeBucketSuffix}
. - Sau khi ngăn xếp CloudFormation được tạo, hãy điều hướng đến Kết quả đầu ra tab của ngăn xếp và nắm bắt giá trị của
DataLakeS3Bucket
để sử dụng ở bước tiếp theo.
Tạo tệp dữ liệu và tải chúng lên Amazon S3 trong tài khoản nhà sản xuất dữ liệu
Định cấu hình AWS CLI của bạn để sử dụng danh tính IAM với quyền tải lên DataLakeS3BucketName trong tài khoản AWS của nhà sản xuất dữ liệu (123456789012
) hoặc bạn có thể đăng nhập vào CloudShell bằng cách sử dụng Bảng điều khiển quản lý AWS. Hoàn thành các bước sau:
- Trên máy cục bộ của bạn, hãy di chuyển đến thư mục bạn chọn bằng lệnh cd, ví dụ:
cd ~
. - Chạy kịch bản với
chmod 744 create_sample_data.sh && ./create_sample_data.sh <DataLakeS3BucketName>
.
Kịch bản sẽ tạo một thư mục con tmp
trong thư mục làm việc hiện tại của bạn, tạo dữ liệu thử nghiệm trong tệp CSV và tải tệp lên DataLakeS3BucketName
Gầu S3.
Thiết lập Lake Formation trong tài khoản nhà sản xuất dữ liệu
Trong phần này, chúng ta sẽ hướng dẫn các bước để thiết lập Lake Formation trong tài khoản nhà sản xuất dữ liệu.
Thiết lập cài đặt phiên bản chia sẻ dữ liệu nhiều tài khoản Lake Formation
Lake Formation hỗ trợ nhiều phiên bản chia sẻ dữ liệu. Đối với bài đăng này, chúng tôi sử dụng phiên bản 3. Để tìm hiểu thêm về sự khác biệt giữa các phiên bản chia sẻ dữ liệu, hãy tham khảo Cập nhật cài đặt phiên bản chia sẻ dữ liệu nhiều tài khoản. Để thay đổi phiên bản chia sẻ dữ liệu, hãy xem Để kích hoạt phiên bản mới.
Đăng ký vị trí Amazon S3 làm vị trí kho dữ liệu
Khi bạn đăng ký vị trí Amazon S3 với Lake Formation, bạn chỉ định vai trò IAM có quyền đọc/ghi trên vị trí đó. Sau khi đăng ký, khi cụm EMR yêu cầu quyền truy cập vào vị trí Amazon S3 này, Lake Formation sẽ cung cấp thông tin xác thực tạm thời về vai trò được cung cấp để truy cập dữ liệu. Chúng tôi đã tạo vai trò LakeFormationCompanyDatabaseDataAccessRole
cho mục đích này ở bước trước. Để đăng ký vị trí Amazon S3 làm vị trí hồ dữ liệu, hãy hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản nhà sản xuất dữ liệu (
123456789012
). - Trong ngăn dẫn hướng, chọn Vị trí hồ dữ liệu Dưới Quản trị.
- Chọn Đăng ký vị trí.
- Trong Đường dẫn Amazon S3, đi vào
s3://<DataLakeS3BucketName>/company-database
. - Trong Vai trò IAM, đi vào
LakeFormationCompanyDatabaseDataAccessRole
. - Trong Chế độ cho phép, lựa chọn Hồ hình thành.
- Chọn Đăng ký vị trí.
Thu hồi quyền đã cấp cho IAMAllowedPrincipals
Sản phẩm IAMAllowedPrincipals
nhóm bao gồm mọi người dùng và vai trò IAM được phép truy cập vào tài nguyên Danh mục dữ liệu theo chính sách IAM của bạn. ĐẾN thực thi mô hình Lake Formation, chúng ta cần phải thu hồi quyền từ IAMAllowedPrincipals sử dụng các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản nhà sản xuất dữ liệu.
- Trong ngăn dẫn hướng, chọn Quyền của hồ dữ liệu trong Quyền.
- Lọc quyền theo
Database = company
vàPrinciple=IAMAllowedPrinciples
. - Chọn tất cả các quyền được cấp cho hiệu trưởng
IAMAllowedPrincipals
Và chọn Thu hồi.
Thiết lập cài đặt tích hợp ứng dụng
Để thực thi quyền cho cụm EMR, bạn cần đăng ký giá trị thẻ phiên với Lake Formation. Lake Formation sử dụng thẻ phiên này để ủy quyền cho người gọi và cung cấp quyền truy cập vào hồ dữ liệu. Chúng tôi đăng ký Amazon EMR
làm giá trị thẻ phiên. Giá trị này sẽ được tham chiếu trong cấu hình bảo mật khi tạo cụm EMR.
Thiết lập thẻ phiên bằng các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản nhà sản xuất dữ liệu.
- Chọn Cài đặt tích hợp ứng dụng Dưới Quản trị trong khung điều hướng.
- Chọn Cho phép các công cụ bên ngoài lọc dữ liệu ở các vị trí Amazon S3 đã đăng ký với Lake Formation.
- Trong Giá trị thẻ phiên, đi vào
Amazon EMR
. - Trong ID tài khoản AWS, hãy nhập ID tài khoản AWS của người tiêu dùng dữ liệu (
111122223333
). - Chọn Lưu.
Chia sẻ cơ sở dữ liệu và bảng với tài khoản người tiêu dùng dữ liệu
Hiện tại, chúng tôi cấp quyền cho tài khoản AWS tiêu dùng dữ liệu, bao gồm cả các quyền có thể cấp. Điều này cho phép quản trị viên hồ dữ liệu Lake Formation trong tài khoản người tiêu dùng dữ liệu kiểm soát quyền truy cập vào dữ liệu trong tài khoản.
Cấp quyền cơ sở dữ liệu cho tài khoản người tiêu dùng dữ liệu
Hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản nhà sản xuất dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn cơ sở dữ liệu
company
và trên Hoạt động menu, dưới Quyền, chọn Cấp. - Trong tạp chí Nguyên tắc phần, chọn Tài khoản bên ngoài và nhập tài khoản AWS của người tiêu dùng dữ liệu (
111122223333
). - Trong tạp chí Thẻ LF hoặc tài nguyên danh mục phần, chọn
company
cho Cơ sở dữ liệu. - Trong tạp chí Quyền cơ sở dữ liệu phần, chọn Mô tả cho cả hai Quyền cơ sở dữ liệu và Quyền được cấp.
Điều này cho phép quản trị viên hồ dữ liệu trong tài khoản người tiêu dùng dữ liệu mô tả cơ sở dữ liệu và cấp quyền mô tả cho các thành viên chính khác trong tài khoản người tiêu dùng dữ liệu.
- Chọn Cấp.
Cấp quyền bảng cho tài khoản người tiêu dùng dữ liệu
Hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản nhà sản xuất dữ liệu.
- Trong ngăn dẫn hướng, chọn Bàn.
- Chọn hình ba gạch
products
bảng thuộc vềcompany
cơ sở dữ liệu và trên Hoạt động menu, dưới Quyền, chọn Cấp. - Trong tạp chí Nguyên tắc phần, chọn Tài khoản bên ngoài và nhập vào tài khoản AWS của người tiêu dùng dữ liệu (
111122223333
). - Trong tạp chí Thẻ LF hoặc tài nguyên danh mục phần, chọn Tài nguyên danh mục dữ liệu được đặt tên và chỉ định những điều sau:
- Trong Cơ sở dữ liệu, chọn
company
. - Trong Bàn, chọn
products
vàemployees
.
- Trong Cơ sở dữ liệu, chọn
- Trong tạp chí Quyền bảng phần, chọn Chọn và Mô tả cho cả hai Quyền bảng và Quyền được cấp.
Điều này cho phép quản trị viên hồ dữ liệu trong tài khoản người tiêu dùng dữ liệu chọn và mô tả các bảng, đồng thời cấp quyền chọn và mô tả bảng cho các thành viên chính khác trong tài khoản người tiêu dùng dữ liệu.
- Trong tạp chí Quyền dữ liệu phần, chọn Tất cả quyền truy cập dữ liệu.
- Chọn Cấp.
Bây giờ chúng ta đã hoàn tất việc thiết lập tài khoản nhà sản xuất dữ liệu.
Thiết lập cơ sở hạ tầng trong tài khoản người tiêu dùng dữ liệu
Hoàn thành các bước sau để tạo tài nguyên cơ sở hạ tầng:
- Đăng nhập vào tài khoản người tiêu dùng dữ liệu (
111122223333
). - Chọn Khởi chạy ngăn xếp để triển khai mẫu CloudFormation nhằm tạo các tài nguyên cần thiết.
- Trong Phát hành nhãn, hãy nhập nhãn phát hành Amazon EMR để sử dụng, nhãn này chỉ có thể là emr-6.11 trở lên.
- Trong Loại phiên bản, hãy chọn loại phiên bản cho cụm EMR, chẳng hạn như r4.4xlarge.
- Trong Hậu tố EMRS3BucketName, hãy nhập hậu tố vùng lưu trữ S3 để lưu trữ nhật ký cụm EMR và tệp sổ tay EMR. Tên nhóm S3 đầy đủ sẽ được tạo sẽ là
{AWSAccoundId}-{AWSRegion}-{EMRS3BucketNameSuffix}
. - Trong S3PathToInTransitCertificate, hãy nhập đường dẫn S3 cho tệp .zip chứa các tệp .pem được sử dụng để mã hóa khi truyền.
Để biết hướng dẫn về cách tạo tệp .zip chứa các tệp .pem và tải chúng lên vùng lưu trữ S3 của bạn, hãy tham khảo Cung cấp chứng chỉ mã hóa dữ liệu khi truyền bằng mã hóa Amazon EMR.
- Sau khi ngăn xếp CloudFormation được tạo, hãy điều hướng đến Kết quả đầu ra tab của ngăn xếp.
- Nắm bắt giá trị của
EMRStudioLink
để sử dụng để đăng nhập vào EMR Studio.
Chấp nhận chia sẻ tài nguyên trong tài khoản người tiêu dùng dữ liệu
Để truy cập tài nguyên được chia sẻ, trước tiên bạn phải chấp nhận lời mời.
- Mở bảng điều khiển RAM AWS của tài khoản tiêu dùng dữ liệu bằng nhận dạng IAM có quyền truy cập RAM AWS.
- Trong ngăn dẫn hướng, chọn Chia sẻ tài nguyên Dưới Chia sẻ với tôi.
Bạn sẽ thấy hai lượt chia sẻ tài nguyên đang chờ xử lý từ tài khoản nhà sản xuất dữ liệu.
- Chấp nhận cả hai chia sẻ tài nguyên.
Bạn sẽ thấy company
cơ sở dữ liệu, employees
bàn, và products
bảng trong Danh mục dữ liệu.
Thiết lập Lake Formation trong tài khoản người tiêu dùng dữ liệu
Trong phần này, chúng tôi sẽ hướng dẫn các bước để thiết lập Lake Formation trong tài khoản người tiêu dùng dữ liệu.
Thiết lập cài đặt tích hợp ứng dụng
Tương tự như thiết lập trong tài khoản nhà sản xuất dữ liệu, bạn cần đăng ký Amazon EMR làm thẻ phiên. Giá trị này được tham chiếu trong cấu hình bảo mật khi tạo cụm EMR trong ngăn xếp CloudFormation.
Để làm điều đó, hãy hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản người tiêu dùng dữ liệu (
111122223333
). - Chọn Cài đặt tích hợp ứng dụng Dưới Quản trị trong khung điều hướng.
- Chọn Cho phép các công cụ bên ngoài lọc dữ liệu ở các vị trí Amazon S3 đã đăng ký với Lake Formation.
- Trong Giá trị thẻ phiên, đi vào
Amazon EMR
. - Trong ID tài khoản AWS, hãy nhập ID tài khoản AWS của người tiêu dùng dữ liệu (
111122223333
). - Chọn Lưu.
Cấp quyền mô tả cho các vai trò thời gian chạy trên cơ sở dữ liệu mặc định
Nếu bạn không có cơ sở dữ liệu mặc định trong Lake Formation hoặc cơ sở dữ liệu mặc định của bạn đã có quyền cấp cho IAMAllowedPrinciples
, bạn có thể bỏ qua bước này.
Amazon EMR sẽ kiểm tra cơ sở dữ liệu mặc định theo mặc định. Nếu bạn đã có cơ sở dữ liệu mặc định trong Lake Formation, hãy cấp quyền mô tả cho các vai trò thời gian chạy trên cơ sở dữ liệu mặc định bằng cách hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với người dùng quản trị hồ dữ liệu Lake Formation trong tài khoản người tiêu dùng dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn cơ sở dữ liệu mặc định, xác minh rằng ID tài khoản chủ sở hữu là tài khoản người tiêu dùng dữ liệu (
111122223333
), và trên Hoạt động menu, chọn Cấp. - Trong tạp chí Phần nguyên tắc, lựa chọn Người dùng IAM và vai trò.
- Trong Người dùng IAM và vai trò, chọn
sales-runtime-role
vàhuman-resource-runtime-role
. - Trong Thẻ LF hoặc tài nguyên danh mục, lựa chọn Tài nguyên danh mục dữ liệu được đặt tên và chọn mặc định cho Cơ sở dữ liệu.
- Trong tạp chí Quyền cơ sở dữ liệu phần, cho Quyền cơ sở dữ liệu, chọn Mô tả.
- Chọn Cấp.
Tạo liên kết tài nguyên cho cơ sở dữ liệu dùng chung
Để truy cập vào cơ sở dữ liệu và tài nguyên bảng được chia sẻ bởi tài khoản AWS của nhà sản xuất dữ liệu, bạn cần tạo một liên kết tài nguyên trong tài khoản AWS của người tiêu dùng dữ liệu. Liên kết tài nguyên là một đối tượng Danh mục dữ liệu là một liên kết đến cơ sở dữ liệu hoặc bảng cục bộ hoặc dùng chung. Sau khi tạo liên kết tài nguyên tới cơ sở dữ liệu hoặc bảng, bạn có thể sử dụng tên liên kết tài nguyên ở bất kỳ nơi nào bạn muốn sử dụng tên cơ sở dữ liệu hoặc bảng. Ở bước này, bạn cấp quyền trên các liên kết tài nguyên theo nguyên tắc vai trò thời gian chạy. Sau đó, các vai trò thời gian chạy sẽ truy cập dữ liệu trong cơ sở dữ liệu dùng chung và các bảng cơ bản thông qua liên kết tài nguyên.
Để tạo liên kết tài nguyên, hãy hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản người dùng dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn hình ba gạch
company
cơ sở dữ liệu, hãy xác minh rằng ID tài khoản chủ sở hữu là tài khoản nhà sản xuất dữ liệu (123456789012
), và trên Hoạt động menu, chọn Tạo liên kết tài nguyên. - Trong Tên liên kết tài nguyên, hãy nhập tên của liên kết tài nguyên (ví dụ:
company-shared
). - Trong Vùng cơ sở dữ liệu dùng chung, chọn Vùng của
company
cơ sở dữ liệu. - Trong Cơ sở dữ liệu được chia sẻ, chọn cơ sở dữ liệu công ty.
- Trong ID chủ sở hữu cơ sở dữ liệu được chia sẻ, hãy nhập ID tài khoản của tài khoản nhà sản xuất dữ liệu (
123456789012
). - Chọn Tạo.
Cấp quyền trên liên kết tài nguyên theo nguyên tắc vai trò thời gian chạy
Cấp quyền trên liên kết tài nguyên cho sales-runtime-role và human-resource-runtime-role bằng các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản người dùng dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn liên kết tài nguyên (
company-shared
) và trên Hoạt động menu, chọn Cấp. - Trong tạp chí Nguyên tắc phần, chọn Người dùng IAM và vai trò, và lựa chọn
sales-runtime-role
vàhuman-resource-runtime-role
. - Trong tạp chí Thẻ LF hoặc tài nguyên danh mục phần, cho Cơ sở dữ liệu, chọn
company-shared
. - Trong tạp chí Quyền liên kết tài nguyên phần, chọn Mô tả.
Điều này cho phép các vai trò thời gian chạy mô tả liên kết tài nguyên. Chúng tôi không đưa ra bất kỳ lựa chọn nào đối với các quyền có thể cấp vì các vai trò thời gian chạy sẽ không thể cấp quyền cho các nguyên tắc khác.
- Chọn Cấp.
Cấp quyền trên các bảng theo nguyên tắc vai trò thời gian chạy
Bạn cần cấp quyền trên các bảng để sales-runtime-role
và human-resource-runtime-role
để cho phép truy cập dữ liệu:
Human-resource-runtime-role
phải có quyền mô tả và chọn trên tất cả các cột trongemployees
bảng và không có quyền trênproducts
bảng.Sales-runtime-role
nên có quyền chọn trên các cộtuid
,name
vàdepartment
trongemployees
bảng, mô tả và chọn các quyền trên tất cả các cột trongproducts
bảng.
Cấp quyền trên bảng nhân viên cho vai trò nguồn nhân lực-thời gian chạy
Hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản người dùng dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn liên kết tài nguyên (
company-shared
) và trên Hoạt động menu, chọn Cấp cho mục tiêu. - Trong tạp chí Phần nguyên tắc, lựa chọn Người dùng IAM và vai trò, sau đó chọn
human-resource-runtime-role
. - Trong tạp chí Thẻ LF hoặc tài nguyên danh mục phần, chọn Tài nguyên danh mục dữ liệu được đặt tên và chỉ định những điều sau:
- Trong Cơ sở dữ liệu, chọn
company
. - Trong Bànchọn
employees
.
- Trong Cơ sở dữ liệu, chọn
- Trong tạp chí Quyền bảng phần, cho Quyền bảng, lựa chọn Mô tả và Chọn.
- Trong tạp chí Quyền dữ liệu phần, chọn Tất cả quyền truy cập dữ liệu.
- Chọn Cấp.
Cấp quyền trên bảng nhân viên cho sales-runtime-role
Hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản người dùng dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn liên kết tài nguyên (
company-shared
) và trên Hoạt động menu, chọn Cấp cho mục tiêu. - Trong tạp chí Phần nguyên tắc, lựa chọn Người dùng IAM và vai trò, sau đó chọn
sales-runtime-role
. - Trong tạp chí Thẻ LF hoặc tài nguyên danh mục phần, chọn Tài nguyên danh mục dữ liệu được đặt tên và chỉ định những điều sau:
- Trong Cơ sở dữ liệu, chọn
company
. - Trong Bàn, chọn
employees
.
- Trong Cơ sở dữ liệu, chọn
- Trong tạp chí Quyền bảng phần, cho Quyền bảng, lựa chọn Chọn.
- Trong tạp chí Quyền dữ liệu phần, chọn Truy cập dựa trên cột.
- Chọn Bao gồm các cột và chọn
uid
,name
vàdepartment
cột. - Chọn Cấp.
Cấp quyền trên bảng sản phẩm cho sales-runtime-role
Hoàn thành các bước sau:
- Mở bảng điều khiển Lake Formation với quản trị viên hồ dữ liệu Lake Formation trong tài khoản người dùng dữ liệu.
- Trong ngăn dẫn hướng, chọn Cơ sở dữ liệu.
- Chọn liên kết tài nguyên (
company-shared
) và trên Hoạt động menu, chọn Cấp cho mục tiêu. - Trong tạp chí Phần nguyên tắc, lựa chọn Người dùng IAM và vai trò, sau đó chọn
sales-runtime-role
. - Trong tạp chí Thẻ LF hoặc tài nguyên danh mục phần, chọn Tài nguyên danh mục dữ liệu được đặt tên và chỉ định những điều sau:
- Trong Cơ sở dữ liệu, chọn
company
. - Trong Bàn, chọn
products
.
- Trong Cơ sở dữ liệu, chọn
- Trong tạp chí Quyền bảng phần, cho Quyền bảng, lựa chọn Chọn và Mô tả.
- Trong tạp chí Quyền dữ liệu phần, chọn Tất cả quyền truy cập dữ liệu.
- Chọn Cấp.
Đăng nhập vào EMR Studio và sử dụng Không gian làm việc của EMR Studio
Chuyển đổi vai trò của bạn đến alice-role
or bob-role
trên bảng điều khiển bằng các trình duyệt web khác nhau để kiểm tra quyền truy cập. Mở EMRStudioLink
URL từ đầu ra của ngăn xếp CloudFormation để đăng nhập vào EMR Studio với từng vai trò, sau đó hoàn thành các bước sau:
- Chọn Không gian làm việc trong ngăn điều hướng và chọn Tạo không gian làm việc.
- Nhập tên và mô tả cho Không gian làm việc.
- Chọn Tạo không gian làm việc.
Một tab mới chứa JupyterLab sẽ tự động mở khi Workspace sẵn sàng. Bật cửa sổ bật lên trong trình duyệt của bạn nếu cần.
- Chọn Tính biểu tượng trong ngăn điều hướng để gắn Không gian làm việc EMR Studio với công cụ điện toán.
- Chọn Cụm EMR trên EC2 cho loại tính toán.
- Chọn ID cụm EMR bạn đã tạo bằng AWS CloudFormation.
- Trong Vai trò thời gian chạy, chọn
sales-runtime-role
nếu đăng nhập với tư cáchalice-role
. Chọnhuman-resource-runtime-role
nếu đăng nhập với tư cáchbob-role
. - Chọn Đính kèm.
Chạy mã trong EMR Studio Workspace và xác minh quyền truy cập dữ liệu
Chạy mã sau trong Không gian làm việc EMR Studio bằng hạt nhân PySpark sau khi đăng nhập bằng vai trò alice hoặc vai trò bob:
Bạn sẽ thấy các kết quả khác nhau khi sử dụng các vai trò khác nhau.
Theo cấu hình truy cập dữ liệu của chúng tôi trong Lake Formation, Alice sẽ có toàn quyền truy cập dữ liệu cho products
bàn. Cô ấy có thể xem tất cả các cột ngoại trừ mức lương trong employees
bảng.
Đối với Bob, theo cấu hình truy cập dữ liệu của chúng tôi trong Lake Formation, anh ấy sẽ có toàn quyền truy cập dữ liệu vào employees
bảng, nhưng anh ta không có quyền truy cập vào products
bảng.
Làm sạch
Khi bạn đã thử nghiệm xong giải pháp này, hãy dọn sạch tài nguyên của mình:
- Dừng và xóa Không gian làm việc EMR Studio được tạo trong tài khoản AWS tiêu dùng dữ liệu.
- Xóa tất cả nội dung trong nhóm S3
EMRS3Bucket
trong tài khoản AWS của người tiêu dùng dữ liệu. - Xóa ngăn xếp CloudFormation trong tài khoản AWS tiêu dùng dữ liệu.
- Xóa tất cả nội dung trong nhóm S3
DataLakeS3Bucket
trong tài khoản AWS của nhà sản xuất dữ liệu. - Xóa ngăn xếp CloudFormation trong tài khoản AWS của nhà sản xuất dữ liệu.
Kết luận
Bài đăng này hướng dẫn cách bạn có thể sử dụng các vai trò thời gian chạy để kết nối với Không gian làm việc EMR Studio bằng Amazon EMR nhằm áp dụng biện pháp kiểm soát truy cập dữ liệu chi tiết trên nhiều tài khoản với Lake Formation. Chúng tôi cũng đã chứng minh cách nhiều người dùng EMR Studio có thể kết nối với cùng một cụm EMR, mỗi cụm sử dụng vai trò thời gian chạy trong phạm vi có các quyền phù hợp với cấp độ truy cập dữ liệu của cá nhân họ.
Để tìm hiểu thêm về cách sử dụng Không gian làm việc EMR Studio với Lake Formation, hãy tham khảo Chạy Không gian làm việc EMR Studio với vai trò thời gian chạy. Chúng tôi khuyến khích bạn dùng thử chức năng mới này và kết nối với chúng tôi nếu bạn có bất kỳ câu hỏi hoặc phản hồi nào!
Về các tác giả
Ashley Chu là Kỹ sư phát triển phần mềm tại AWS. Cô quan tâm đến phân tích dữ liệu và hệ thống phân tán.
Srividya Parthasarathy là Kiến trúc sư dữ liệu lớn cấp cao trong nhóm AWS Lake Formation. Cô thích xây dựng các giải pháp phân tích và lưới dữ liệu trên AWS và chia sẻ chúng với cộng đồng.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- PlatoSức khỏe. Tình báo thử nghiệm lâm sàng và công nghệ sinh học. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/big-data/use-iam-runtime-roles-with-amazon-emr-studio-workspaces-and-aws-lake-formation-for-cross-account-fine-grained-access-control/
- : có
- :là
- :không phải
- $ LÊN
- 100
- 107
- 11
- 20
- 7
- 8
- a
- Có khả năng
- Giới thiệu
- Chấp nhận
- truy cập
- Truy cập dữ liệu
- truy cập
- có thể truy cập
- Theo
- Tài khoản
- Trợ Lý Giám Đốc
- ngang qua
- Sau
- bắn
- Tất cả
- cho phép
- cho phép
- cho phép
- Đã
- Ngoài ra
- đàn bà gan dạ
- Amazon EC2
- Amazon EMR
- Amazon Web Services
- an
- phân tích
- phân tích
- và
- bất kì
- Apache
- Apache Spark
- Các Ứng Dụng
- các ứng dụng
- Đăng Nhập
- kiến trúc
- LÀ
- AS
- At
- đính kèm
- ủy quyền
- tự động
- AWS
- Hình thành đám mây AWS
- Keo AWS
- Sự hình thành hồ AWS
- BE
- bởi vì
- thuộc
- giữa
- lớn
- Dữ Liệu Lớn.
- ngũ cốc
- cả hai
- trình duyệt
- trình duyệt
- Xây dựng
- nhưng
- by
- CAN
- nắm bắt
- Danh mục hàng
- Phân loại
- CD
- Giấy chứng nhận
- thay đổi
- kiểm tra
- sự lựa chọn
- Chọn
- giống cá lăng
- cụm
- mã
- Cột
- cộng đồng
- công ty
- Của công ty
- hoàn thành
- hoàn thành
- Tính
- Cấu hình
- Kết nối
- connect
- Hãy xem xét
- bao gồm
- An ủi
- người tiêu dùng
- chứa
- nội dung
- điều khiển
- tạo
- tạo ra
- Tạo
- Credentials
- Current
- dữ liệu
- truy cập dữ liệu
- phân tích dữ liệu
- Phân tích dữ liệu
- Hồ dữ liệu
- khoa học dữ liệu
- nhà khoa học dữ liệu
- chia sẻ dữ liệu
- Cơ sở dữ liệu
- cơ sở dữ liệu
- Mặc định
- định nghĩa
- chứng minh
- chứng minh
- bộ
- triển khai
- mô tả
- Mô tả
- phát triển
- Phát triển
- sự khác biệt
- khác nhau
- trực tiếp
- phân phối
- hệ thống phân phối
- do
- Không
- dont
- xuống
- mỗi
- Công nhân
- nhân viên
- cho phép
- cho phép
- khuyến khích
- mã hóa
- thi hành
- Động cơ
- ky sư
- Kỹ Sư
- Kỹ sư
- Động cơ
- đăng ký hạng mục thi
- doanh nghiệp
- Môi trường
- Ether (ETH)
- ví dụ
- Trừ
- Giải thích
- ngoài
- Tập tin
- Các tập tin
- lọc
- Tên
- tiếp theo
- sau
- Trong
- hình thành
- từ
- Full
- đầy đủ
- chức năng
- được
- Go
- cai quản
- cấp
- cấp
- Nhóm
- có
- vui mừng
- Có
- he
- giúp
- Độ đáng tin của
- Hướng dẫn
- HTML
- http
- HTTPS
- Nhân loại
- NGUỒN NHÂN LỰC
- Nhân sự
- IAM
- ID
- Bản sắc
- if
- minh họa
- thực hiện
- in
- bao gồm
- Bao gồm
- hệ thống riêng biệt,
- thông tin
- Cơ sở hạ tầng
- ví dụ
- hướng dẫn
- tích hợp
- hội nhập
- quan tâm
- giới thiệu
- lời mời
- IT
- việc làm
- jpg
- nhãn
- hồ
- hồ
- lớn
- Doanh nghiệp lớn
- phóng
- LEARN
- Cấp
- LIMIT
- LINK
- liên kết
- địa phương
- địa điểm thư viện nào
- . Các địa điểm
- máy
- làm cho
- LÀM CHO
- quản lý
- quản lý
- quản lý
- quản lý
- nhiều
- phù hợp
- cơ chế
- Menu
- mắt lưới
- Might
- chi tiết
- di chuyển
- nhiều
- phải
- tên
- Được đặt theo tên
- Điều hướng
- THÔNG TIN
- cần thiết
- Cần
- cần thiết
- Mới
- tiếp theo
- Không
- máy tính xách tay
- máy tính xách tay
- tại
- vật
- of
- thường
- on
- có thể
- mở
- hoạt động
- or
- Nền tảng khác
- vfoXNUMXfipXNUMXhfpiXNUMXufhpiXNUMXuf
- ra
- đầu ra
- chủ sở hữu
- cửa sổ
- con đường
- cấp phát chính
- cho phép
- quyền
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- Chính sách
- Bài đăng
- quyền lực
- điều kiện tiên quyết
- trước
- Hiệu trưởng
- hiệu trưởng
- nguyên tắc
- nguyên tắc
- sản xuất
- Sản phẩm
- Sản phẩm
- Hồ sơ
- Profiles
- cho
- cung cấp
- cung cấp
- mục đích
- Python
- truy vấn
- Câu hỏi
- R
- RAM
- Nguyên
- dữ liệu thô
- sẵn sàng
- giảm
- xem
- khu
- ghi danh
- đăng ký
- đăng ký
- phát hành
- yêu cầu
- tài nguyên
- Thông tin
- kết quả
- Kết quả
- Vai trò
- vai trò
- chạy
- chạy
- tiền lương
- bán hàng
- tương tự
- Scala
- Khoa học
- Nhà khoa học
- các nhà khoa học
- kịch bản
- Phần
- phần
- xem
- chọn
- cao cấp
- riêng biệt
- máy chủ
- DỊCH VỤ
- Phiên
- định
- thiết lập
- thiết lập
- thiết lập
- Chia sẻ
- chia sẻ
- cổ phiếu
- chia sẻ
- chị ấy
- nên
- cho thấy
- đăng ký
- Ký kết
- ký
- Đơn giản
- duy nhất
- Phần mềm
- phát triển phần mềm
- bán
- giải pháp
- Giải pháp
- nguồn
- Spark
- ngăn xếp
- Bước
- Các bước
- là gắn
- hàng
- lưu trữ
- cửa hàng
- đơn giản
- phòng thu
- trình
- như vậy
- cung cấp
- Hỗ trợ
- hệ thống
- bàn
- TAG
- nhóm
- mẫu
- tạm thời
- thử nghiệm
- việc này
- Sản phẩm
- cung cấp their dịch
- Them
- sau đó
- vì thế
- điều này
- những
- Thông qua
- timeline
- đến
- công cụ
- quá cảnh
- thử
- hai
- kiểu
- thường
- ui
- Dưới
- cơ bản
- Đang tải lên
- URL
- us
- sử dụng
- đã sử dụng
- người sử dang
- Người sử dụng
- sử dụng
- sử dụng
- giá trị
- xác minh
- phiên bản
- thông qua
- Xem
- hình dung
- đi bộ
- we
- web
- Trình duyệt web
- các dịch vụ web
- là
- khi nào
- cái nào
- toàn bộ
- sẽ
- với
- ở trong
- đang làm việc
- sẽ
- viết
- viết
- khoai mỡ
- bạn
- trên màn hình
- zephyrnet
- Zip