SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE
SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE
Business Critical 기능
이 기능에는 Business Critical(또는 그 이상) 에디션이 필요해요.
업그레이드에 대해 문의하려면 Snowflake 지원팀에 문의해요.
보류 중인 Multi-party Approval 요청에 투표를 행사해요. 승인자는 이 함수를 APPROVE 또는 REJECT 결정과 함께 호출해 요청에 투표해요. 요청자는 자신의 보류 중인 요청이 승인되거나 만료되기 전에 REJECT로 호출해 취소할 수 있어요.
출처: Snowflake SQL Reference - SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE
본문
구문
SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE( '<request_id>', '<decision>' [ , '<comment>' ] )
인자
'request_id'
- 투표할 승인 요청의 고유 식별자예요. 이 값은 보호된 작업이 Multi-party Approval 엔진에 의해 가로채질 때 MPA_APPROVAL_REQUIRED 오류에서 반환돼요.
'decision'
- 행사할 투표예요. 다음 값 중 하나예요.
- APPROVE — 요청에 대한 승인 투표를 기록해요. 승인 투표 수가 규칙의 필수 승인 수에 도달하면 요청 상태가 APPROVED로 바뀌고 요청자가 원래 문을 다시 실행할 수 있어요.
- REJECT — 거부를 기록해요. 승인자의 단일 REJECT 투표는 즉시 요청을 종료해요. 요청자는 REJECT를 사용해 자신이 만든 요청을 취소할 수 있어요.
'comment'
- 투표를 설명하는 주석이에요. 요청자가 REJECT를 사용해 자신의 요청을 취소하는 경우 선택 사항인 것을 제외하면, 이 인자는 필수예요.
반환
투표가 성공적으로 기록되었음을 나타내는 확인 문자열을 반환해요.
접근 제어 요구 사항
이 함수를 호출하는 데 추가 권한은 필요하지 않아요. APPROVE 투표나 승인자 REJECT 투표를 행사하려면 요청 규칙의 승인자로 등록되어 있어야 해요. 요청을 취소하려면 요청을 만든 사용자여야 해요.
사용법 참고 사항
- 승인자는 Snowsight의 Requests & Approvals 페이지에서도 요청을 검토하고 투표할 수 있어요. UI를 통한 투표는 이 함수를 호출하는 것과 동일해요.
- 단일 REJECT 투표는 이미 받은 승인 수와 관계없이 요청을 즉시 종료해요.
- 자신이 만든 요청만 취소할 수 있어요. 다른 사용자가 만든 요청을 취소하려 하면 실패해요.
- 요청자가 REJECT를 사용해 자신의 요청을 취소하는 경우를 제외하면 모든 투표에 주석이 필요해요.
- 요청이 PENDING 상태인 동안 언제든지 투표하거나 취소할 수 있어요. 보류 중인 요청을 보려면 Snowsight의 Requests & Approvals 페이지로 이동해요.
예제
보류 중인 요청에 승인 투표를 행사해요.
SELECT SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE(
'a1b2c3d4-e5f6-7890-abcd-ef1234567890',
'APPROVE',
'Reviewed and approved as part of scheduled key rotation.'
);
보류 중인 요청을 거부해요.
SELECT SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE(
'a1b2c3d4-e5f6-7890-abcd-ef1234567890',
'REJECT',
'Change is out of scope for the current maintenance window.'
);
자신이 만든 요청을 취소해요(주석 불필요).
SELECT SYSTEM$CAST_MULTI_PARTY_APPROVAL_VOTE(
'a1b2c3d4-e5f6-7890-abcd-ef1234567890',
'REJECT'
);
더 알아보기
- Multi-party Approval 문서 — 다자간 승인 워크플로
- Snowflake 시스템 함수 — 시스템 제어·정보 함수 모음