기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
튜토리얼: DAG의 하위 집합에 대한 Amazon MWAA 사용자 액세스 제한
Amazon MWAA는 IAM 보안 주체를 하나 이상의 Apache Airflow 기본 역할
참고
IAM 역할을 가정할 수 있는 한, 이 튜토리얼의 단계는 페더레이션 액세스를 사용하여 완료할 수 있습니다.
주제
사전 조건
이 자습서를 완료하려면 다음이 필요합니다.
-
AdministratorAccess
권한이 있는 IAM 보안 주체 Admin
와(과) DAG 액세스를 제한할 수 있는 보안 주체인 IAM 사용자MWAAUser
. 관리자 역할에 대한 자세한 내용은 IAM 사용 설명서의 관리자 직무 기능을 참조하십시오.참고
권한 정책을 IAM 사용자에게 직접 연결하지 마십시오. 사용자가 Amazon MWAA 리소스에 임시로 액세스할 수 있도록 위임할 수 있는 IAM 역할을 설정하시기 바랍니다.
-
AWS Command Line Interface버전 2가 설치되었습니다.
1단계: 기본 Public
Apache Airflow 역할을 사용하여 Amazon MWAA 웹 서버에 IAM 보안 주체에 대한 액세스 권한을 제공합니다.
AWS Management Console을(를) 사용하여 권한을 부여하려면
-
AWS 계정에
Admin
역할로 로그인하여 IAM 콘솔을 엽니다. -
왼쪽의 탐색 창에서 사용자를 선택한 후 사용자 테이블에서 Amazon MWAA IAM 사용자를 선택합니다.
-
사용자 세부 정보 페이지의 요약에서 권한 탭을 선택한 다음 권한 정책을 선택하여 카드를 확장하고 권한 추가를 선택합니다.
-
권한 설정 섹션에서 기존 정책 직접 연결을 선택한 후 정책 생성을 선택하여 사용자 지정 권한 정책을 생성하고 연결합니다.
-
정책 생성 페이지에서 JSON을 선택한 후, 정책 편집기에 다음 JSON 권한 정책을 복사하여 붙여넣습니다. 이 정책은 기본
Public
Apache Airflow 역할을 가진 사용자에게 웹 서버 액세스 권한을 부여합니다.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "airflow:CreateWebLoginToken", "Resource": [ "arn:aws:airflow:
YOUR_REGION
:YOUR_ACCOUNT_ID
:role/YOUR_ENVIRONMENT_NAME
/Public" ] } ] }
2단계: 새 Apache Airflow 사용자 지정 역할 생성
Apache Airflow UI를 사용하여 새 역할을 만들려면
-
관리자 IAM 역할을 사용하여 Amazon MWAA 콘솔
을 열고 사용자 환경의 Apache Airflow UI를 시작합니다. -
상단의 탐색 창에서 보안에 마우스오버하여 드롭다운 목록을 연 다음 역할 목록을 선택하여 기본 Apache Airflow 역할을 확인합니다.
-
역할 목록에서 사용자를 선택한 다음 페이지 상단에서 작업을 선택하여 드롭다운을 엽니다. 역할 복사를 선택하고 확인을 클릭합니다
참고
Ops 또는 Viewer 역할을 복사하여 각각 액세스 권한을 늘리거나 줄일 수 있습니다.
-
테이블에서 생성한 새 역할을 찾아 레코드 편집을 선택합니다.
-
역할 전환 페이지에서 다음을 수행합니다.
-
이름의 텍스트 필드에 역할의 새 이름을 입력합니다. 예:
Restricted
. -
권한 목록에서
can read on DAGs
와can edit on DAGs
를 제거한 다음, 액세스를 제공하려는 DAG 세트에 대한 읽기 및 쓰기 권한을 추가합니다. 예를 들어 DAGexample_dag.py
의 경우
및can read on DAG:
example_dag
을(를) 추가합니다.can edit on DAG:
example_dag
저장을 선택합니다. 이제 Amazon MWAA 환경에서 사용할 수 있는 DAG의 하위 집합에 대한 액세스를 제한하는 새 역할이 생겼을 것입니다. 이제 모든 기존 Apache Airflow 사용자에게 이 역할을 할당할 수 있습니다.
-
3단계: 생성한 역할을 Amazon MWAA 사용자에게 할당합니다
새 역할을 할당하려면
-
MWAAUser
에 대한 액세스 보안 인증을 사용하여 다음 CLI 명령을 실행하고 환경의 웹 서버 URL을 검색합니다.$
aws mwaa get-environment --name
YOUR_ENVIRONMENT_NAME
| jq '.Environment.WebserverUrl'성공하면 다음과 같은 결과가 출력됩니다.
"ab1b2345-678a-90a1-a2aa-34a567a8a901.c13.us-west-2.airflow.amazonaws.com"
-
MWAAUser
이(가) AWS Management Console에 로그인한 상태에서 새 브라우저 창을 열고 다음 URL에 액세스합니다.Webserver-URL
를 자신의 정보로 대체합니다.https://
<Webserver-URL>
/home성공하면
MWAAUser
에게 아직 Apache Airflow UI에 대한 액세스 권한이 부여되지 않았으므로Forbidden
오류 페이지가 표시됩니다. -
Admin
이(가) AWS Management Console에 로그인한 상태에서 Amazon MWAA 콘솔을 다시 열고 사용자 환경의 Apache Airflow UI를 시작합니다. -
UI 대시보드에서 보안 드롭다운을 확장하고 이번에는 사용자 목록을 선택합니다.
-
사용자 테이블에서 새 Apache Airflow 사용자를 찾아 레코드 편집을 선택합니다. 사용자의 이름은
user/
의 패턴으로 IAM 사용자 이름과 일치합니다.mwaa-user
-
사용자 편집 페이지의 역할 섹션에서 생성한 새 사용자 지정 역할을 추가한 다음 저장을 선택합니다.
참고
성 필드는 필수이지만 스페이스를 입력해도 충분합니다.
IAM
Public
보안 주체는MWAAUser
이(가) Apache Airflow UI에 액세스할 수 있는 권한을 부여하는 반면, 새 역할은 DAG를 보는 데 필요한 추가 권한을 제공합니다.
중요
Apache Airflow UI를 사용하여 추가한 IAM에서 승인하지 않은 5가지 기본 역할(예:Admin
)은 다음 사용자 로그인 시 제거됩니다.
다음 단계
-
Amazon MWAA 환경 액세스 관리에 대해 자세히 알아보고 환경 사용자를 위해 사용할 수 있는 샘플 JSON IAM 정책을 보려면 Amazon MWAA 환경에 액세스 단원을 참조하십시오.
관련 리소스
-
액세스 제어
(Apache Airflow 설명서) — Apache Airflow 설명서 웹사이트에서 기본 Apache Airflow 역할에 대해 자세히 알아봅니다.