티스토리 뷰
airflow 2.x 부터 롤기반으로 권한관리가 일어나고, 이에 따른 퍼미션 권한이 존재한다.
그런데 이게 어떤걸 의미하는건지 잘 정리가 안되서 간단히 정리하고자한다.
1. can read on DAGs
DAG 를 볼 수 있는지 여부를 의미한다.
리스트에 나와서 어떤 DAGS 가 있는지 조회된다의 의미일뿐 실행이나 해제같은 동작은 안된다. (진짜 목록에만 보일뿐 할 수 있는게 없음)
DAG 별로 따로 수동으로 관리하고, 기본적으로 조회가 안되게 하려면 이 옵션을 제거해주도록 하자.
그러면 아래와 같이 기본적으로는 DAGS 의 목록이 조회되지 않는다.
특정 DAG 만 조회 가능하게 하려면 "can read on DAG: <DAG아이디>" 형태로 부여하는것도 가능하다.
2. can edit on DAGs
DAG 의 목록이 보이고, 스케쥴 활성화 까지 가능해진다. can read on DAGs 권한을 부여하지 않더라도 조회권한이 생기고 disable, enable 이 모두 가능하다. can read on DAGs 의 상위개념이라, 주의하자.
3. can edit on DAG Runs
DAG 의 실행이력의 상태값을 변경할 수 있게 된다. 즉, 아래와 같이 실패난 작업을 success 로 바꾸거나, 상제를 clear 하는것이 가능하다. 이 설정이 없으면 해당 설정을 바꿀 수 없다.
4. can delete on DAG Runs
DAG 실행이력을 삭제 할 수 있도록 활성화 한다. 쉽게 말해서 아래 휴지통 버튼이 활성화 되는걸 의미한다.
5. can create on DAG Runs
DAG 를 수동으로 실행할 수 있는 권한을 의미한다. 기본 권한에서는 Users 부터 존재한다.
6. can delete on DAGs
DAG 를 삭제하는 권한을 의미한다.
물론 물리적으로 dag python 파일을 지우는것이 아니라 다시 로딩되겠지만, 로딩이 안되는 상황에서는 필요한 권한이다.
주의할점은 모든 DAGS 의 삭제버튼이 활성화 되기 때문에, 특정 DAG 의 권한만 활성화 해서 사용한다면 주의가 필요하다.
예를 들어서 user1 에 아래와 같이 특정 DAG 의 read 권한을 부여했는데,
여기에 can delete on DAGs 를 부여하면 삭제권한이 생기므로 DAG 별 권한을 컨트롤 한다면 주의해서 사용해야한다.
'데이터처리 > Airflow' 카테고리의 다른 글
[AIRFLOW] Variable.get() 의 성능 문제 해결방법 - 환경변수 활용법 (0) | 2023.12.15 |
---|---|
[오류] Airflow 에서 logical_date 가 잘못 생성되는 문제 - catchup 문제 (0) | 2023.12.14 |
[오류] DAG 의 filepath 값이 잘못 로딩되는 현상 원인과 해결방법 (0) | 2023.12.13 |
[AIRFLOW] BashOperator 에서 시스템 환경변수가 로딩안되는 문제 - env 지정시 (0) | 2023.12.11 |
[AIRFLOW] logical_date 의 개념 이해하기- execution_date 의 대체 (1) | 2023.12.05 |