관리자라는 이름만으로는 업무 범위가 정해지지 않습니다

관리자 페이지를 기획할 때 권한 항목에 관리자, 매니저, 일반 운영자부터 적는 경우가 있습니다. 화면에 넣기는 쉽습니다. 그런데 개발을 시작하면 질문이 쏟아집니다. 매니저는 모든 주문을 볼 수 있나요? 고객 전화번호를 내려받아도 되나요? 환불은 신청만 하나요, 승인까지 하나요?

같은 관리자 페이지를 사용해도 담당 업무는 다릅니다. 고객 문의를 처리하는 직원에게 주문 확인은 필요하지만 정산 계좌를 바꿀 권한까지 줄 이유는 없습니다. 상품을 등록하는 직원도 다른 판매자의 상품을 수정해서는 안 됩니다. 역할 이름만 정하고 넘어가면 이런 차이를 화면을 만들면서 뒤늦게 결정하게 됩니다.

이 글에서는 가상의 쇼핑몰 운영팀을 예로 들어보겠습니다. 고객지원 담당자는 주문을 확인하고 환불을 요청합니다. 운영 책임자는 요청을 검토해 승인합니다. 상품 담당자는 자신이 맡은 브랜드의 상품을 등록하고 수정합니다. 실제 고객사 사례가 아닌 권한 설계 설명을 위한 예시입니다.

권한을 정할 때는 누가 어떤 업무를 수행하는지부터 적습니다. 한 사람이 여러 업무를 맡을 수도 있습니다. 사람이 바뀌어도 업무 기준은 남아야 하므로 직원 이름이나 직급을 권한의 기준으로 삼지 않는 편이 좋습니다.

admin-permission-action-resource-scope-image-1
admin-permission-action-resource-scope-image-1

행위와 대상 범위, 승인 단계를 나누어 적습니다

조회와 실행은 다른 권한입니다

주문 관리 메뉴에 접근할 수 있다는 말만으로는 허용 범위가 충분히 설명되지 않습니다. 주문 조회, 배송지 수정, 환불 요청, 환불 승인, 고객정보 내려받기를 각각 구분해야 합니다. 같은 화면에 있는 버튼이라도 실행 결과와 위험이 다르기 때문입니다.

가상의 쇼핑몰이라면 다음처럼 업무를 적을 수 있습니다.




업무

허용 행위

대상 범위

승인 조건

고객지원

주문 조회, 환불 요청

담당 스토어 주문

환불 실행은 책임자 승인

상품 운영

상품 등록·수정

담당 브랜드 상품

판매 중단은 책임자 승인

운영 책임

환불 승인

담당 스토어 요청

본인이 올린 요청은 별도 검토자 승인

정산 담당

정산 조회

담당 사업자 자료

계좌 변경은 별도 승인

처음부터 모든 업무에 승인 단계를 붙일 필요는 없습니다. 잘못 실행했을 때 되돌리기 어려운 행위부터 검토합니다. 돈이 이동하거나 외부에 공개된 정보가 바뀌는 작업이 여기에 해당합니다. 승인 요청자와 승인자를 분리할지도 함께 정합니다.

같은 기능이라도 볼 수 있는 데이터가 다릅니다

상품 수정 권한이 있다고 해서 모든 상품을 수정해도 되는 것은 아닙니다. 담당 브랜드, 소속 스토어, 고객사처럼 데이터의 범위를 제한해야 합니다. 조회에는 전화번호 일부만 표시하고 원문 열람에는 별도 권한을 두는 방식도 검토할 수 있습니다.

개발팀에는 역할 이름과 함께 허용 행위, 대상 범위, 추가 조건을 전달합니다. 예를 들어 상품 담당자는 담당 브랜드의 상품 설명을 수정할 수 있지만 가격 변경은 책임자 승인을 받아야 한다고 적습니다. 문장으로 읽었을 때 판단이 엇갈리는 항목은 구현 전 업무 담당자와 다시 확인합니다.

역할별 권한표가 너무 커진다면 사용하지 않는 선택지를 늘리기보다 현재 운영에 필요한 업무 묶음부터 만듭니다. 처음에는 좁게 허용하고 실제 업무에서 필요한 권한을 검토해 추가하는 최소 권한 원칙을 적용합니다.

버튼을 숨긴 다음에는 서버의 거절을 확인합니다

화면에 없다는 사실만으로 접근이 차단되지는 않습니다

환불 승인 권한이 없는 직원에게 승인 버튼을 숨기면 화면은 이해하기 쉬워집니다. 하지만 이것만으로는 환불 실행을 막았다고 볼 수 없습니다. 사용자가 저장해 둔 주소로 직접 접근하거나 API 요청을 보내는 상황에서도 서버가 권한을 확인해야 합니다.

확인 범위는 로그인 여부에서 끝나지 않습니다. 요청한 사람이 해당 행위를 실행할 권한이 있는지, 요청 대상이 담당 스토어나 브랜드 안에 있는지, 현재 상태에서 실행해도 되는지를 함께 검사합니다. 다른 스토어의 주문 번호를 넣었을 때 요청을 거절하는지까지 확인해야 합니다.

새 기능을 추가할 때 권한을 따로 지정하지 않았다는 이유로 모든 운영자에게 열어두는 방식도 피합니다. 기본은 거절로 두고 허용할 업무를 명시합니다. 화면 안내와 서버 검증에 같은 권한 기준을 사용하도록 관리해야 합니다.

역할이 바뀐 상황도 테스트합니다

정상 업무를 수행하는 테스트만으로는 부족합니다. 고객지원 담당자가 환불을 요청하는 흐름과 함께 승인 API를 직접 호출했을 때 거절되는지도 점검합니다.

  • 담당 브랜드의 상품은 수정되지만 다른 브랜드의 상품은 거절되는가?

  • 환불 요청자가 자신의 요청을 승인하려 하면 차단되는가?

  • 승인 대기 중인 요청의 금액이 바뀌면 다시 검토하도록 처리되는가?

  • 역할을 회수한 뒤에도 기존 로그인 상태에서 작업이 실행되는가?

  • 화면과 내려받기 파일에 동일한 데이터 범위 제한이 적용되는가?

역할 변경 시 권한을 언제부터 반영할지도 정해야 합니다. 새 로그인부터 적용하는지, 기존 세션과 토큰에도 반영하는지에 따라 회수 직후의 동작이 달라집니다. 개인정보 열람이나 환불 승인처럼 민감한 업무는 변경된 권한을 서버가 언제 다시 확인할지 개발 범위에 포함합니다.

refund-request-approval-flow-image-4
refund-request-approval-flow-image-4

출시 전에는 권한표를 실제 업무 시나리오로 확인합니다

권한표를 작성한 뒤에는 운영 담당자와 하루 업무를 따라가 봅니다. 고객 문의를 받고 주문을 찾은 다음 환불 요청을 올려 책임자의 승인을 받는 과정을 직접 확인합니다. 필요한 데이터가 안 보여 공용 관리자 계정을 빌려 쓰게 된다면 권한을 지나치게 좁힌 부분이 없는지 살펴봐야 합니다.

반대로 업무와 무관한 고객정보를 내려받거나 다른 스토어의 내용을 바꿀 수 있다면 허용 범위를 줄입니다. 불편할 때마다 전체 권한을 주는 방식으로 해결하면 처음 정한 기준을 유지하기 어렵습니다.

출시 전에 남겨둘 자료는 복잡할 필요가 없습니다. 역할별 권한표와 승인 흐름, 권한 부여·회수 절차, 허용 및 거절 테스트 사례를 한곳에 모아 두면 됩니다. 환불이나 계좌 변경처럼 중요한 작업은 실행자와 대상, 시각, 변경 내용을 기록하는지도 확인합니다.

관리자 페이지의 권한은 회사의 업무 분담을 제품 안에 옮기는 작업입니다. 직급이 같아도 담당 범위가 다르고 같은 사람도 업무에 따라 요청자나 승인자가 됩니다. 이 차이를 기획에서 정리해 두면 디자인과 개발팀도 어떤 정보와 버튼을 누구에게 보여줄지 일관되게 판단할 수 있습니다.

4PS와 관리자 페이지를 준비한다면 현재 팀의 업무와 승인 절차부터 알려주세요. 필요한 화면을 정리하면서 역할별로 허용할 행위와 데이터 범위, 출시 전 확인할 예외 상황까지 함께 구체화하겠습니다.

Latest Blogs

관리자라는 이름만으로는 업무 범위가 정해지지 않습니다

관리자 페이지를 기획할 때 권한 항목에 관리자, 매니저, 일반 운영자부터 적는 경우가 있습니다. 화면에 넣기는 쉽습니다. 그런데 개발을 시작하면 질문이 쏟아집니다. 매니저는 모든 주문을 볼 수 있나요? 고객 전화번호를 내려받아도 되나요? 환불은 신청만 하나요, 승인까지 하나요?

같은 관리자 페이지를 사용해도 담당 업무는 다릅니다. 고객 문의를 처리하는 직원에게 주문 확인은 필요하지만 정산 계좌를 바꿀 권한까지 줄 이유는 없습니다. 상품을 등록하는 직원도 다른 판매자의 상품을 수정해서는 안 됩니다. 역할 이름만 정하고 넘어가면 이런 차이를 화면을 만들면서 뒤늦게 결정하게 됩니다.

이 글에서는 가상의 쇼핑몰 운영팀을 예로 들어보겠습니다. 고객지원 담당자는 주문을 확인하고 환불을 요청합니다. 운영 책임자는 요청을 검토해 승인합니다. 상품 담당자는 자신이 맡은 브랜드의 상품을 등록하고 수정합니다. 실제 고객사 사례가 아닌 권한 설계 설명을 위한 예시입니다.

권한을 정할 때는 누가 어떤 업무를 수행하는지부터 적습니다. 한 사람이 여러 업무를 맡을 수도 있습니다. 사람이 바뀌어도 업무 기준은 남아야 하므로 직원 이름이나 직급을 권한의 기준으로 삼지 않는 편이 좋습니다.

admin-permission-action-resource-scope-image-1
admin-permission-action-resource-scope-image-1

행위와 대상 범위, 승인 단계를 나누어 적습니다

조회와 실행은 다른 권한입니다

주문 관리 메뉴에 접근할 수 있다는 말만으로는 허용 범위가 충분히 설명되지 않습니다. 주문 조회, 배송지 수정, 환불 요청, 환불 승인, 고객정보 내려받기를 각각 구분해야 합니다. 같은 화면에 있는 버튼이라도 실행 결과와 위험이 다르기 때문입니다.

가상의 쇼핑몰이라면 다음처럼 업무를 적을 수 있습니다.




업무

허용 행위

대상 범위

승인 조건

고객지원

주문 조회, 환불 요청

담당 스토어 주문

환불 실행은 책임자 승인

상품 운영

상품 등록·수정

담당 브랜드 상품

판매 중단은 책임자 승인

운영 책임

환불 승인

담당 스토어 요청

본인이 올린 요청은 별도 검토자 승인

정산 담당

정산 조회

담당 사업자 자료

계좌 변경은 별도 승인

처음부터 모든 업무에 승인 단계를 붙일 필요는 없습니다. 잘못 실행했을 때 되돌리기 어려운 행위부터 검토합니다. 돈이 이동하거나 외부에 공개된 정보가 바뀌는 작업이 여기에 해당합니다. 승인 요청자와 승인자를 분리할지도 함께 정합니다.

같은 기능이라도 볼 수 있는 데이터가 다릅니다

상품 수정 권한이 있다고 해서 모든 상품을 수정해도 되는 것은 아닙니다. 담당 브랜드, 소속 스토어, 고객사처럼 데이터의 범위를 제한해야 합니다. 조회에는 전화번호 일부만 표시하고 원문 열람에는 별도 권한을 두는 방식도 검토할 수 있습니다.

개발팀에는 역할 이름과 함께 허용 행위, 대상 범위, 추가 조건을 전달합니다. 예를 들어 상품 담당자는 담당 브랜드의 상품 설명을 수정할 수 있지만 가격 변경은 책임자 승인을 받아야 한다고 적습니다. 문장으로 읽었을 때 판단이 엇갈리는 항목은 구현 전 업무 담당자와 다시 확인합니다.

역할별 권한표가 너무 커진다면 사용하지 않는 선택지를 늘리기보다 현재 운영에 필요한 업무 묶음부터 만듭니다. 처음에는 좁게 허용하고 실제 업무에서 필요한 권한을 검토해 추가하는 최소 권한 원칙을 적용합니다.

버튼을 숨긴 다음에는 서버의 거절을 확인합니다

화면에 없다는 사실만으로 접근이 차단되지는 않습니다

환불 승인 권한이 없는 직원에게 승인 버튼을 숨기면 화면은 이해하기 쉬워집니다. 하지만 이것만으로는 환불 실행을 막았다고 볼 수 없습니다. 사용자가 저장해 둔 주소로 직접 접근하거나 API 요청을 보내는 상황에서도 서버가 권한을 확인해야 합니다.

확인 범위는 로그인 여부에서 끝나지 않습니다. 요청한 사람이 해당 행위를 실행할 권한이 있는지, 요청 대상이 담당 스토어나 브랜드 안에 있는지, 현재 상태에서 실행해도 되는지를 함께 검사합니다. 다른 스토어의 주문 번호를 넣었을 때 요청을 거절하는지까지 확인해야 합니다.

새 기능을 추가할 때 권한을 따로 지정하지 않았다는 이유로 모든 운영자에게 열어두는 방식도 피합니다. 기본은 거절로 두고 허용할 업무를 명시합니다. 화면 안내와 서버 검증에 같은 권한 기준을 사용하도록 관리해야 합니다.

역할이 바뀐 상황도 테스트합니다

정상 업무를 수행하는 테스트만으로는 부족합니다. 고객지원 담당자가 환불을 요청하는 흐름과 함께 승인 API를 직접 호출했을 때 거절되는지도 점검합니다.

  • 담당 브랜드의 상품은 수정되지만 다른 브랜드의 상품은 거절되는가?

  • 환불 요청자가 자신의 요청을 승인하려 하면 차단되는가?

  • 승인 대기 중인 요청의 금액이 바뀌면 다시 검토하도록 처리되는가?

  • 역할을 회수한 뒤에도 기존 로그인 상태에서 작업이 실행되는가?

  • 화면과 내려받기 파일에 동일한 데이터 범위 제한이 적용되는가?

역할 변경 시 권한을 언제부터 반영할지도 정해야 합니다. 새 로그인부터 적용하는지, 기존 세션과 토큰에도 반영하는지에 따라 회수 직후의 동작이 달라집니다. 개인정보 열람이나 환불 승인처럼 민감한 업무는 변경된 권한을 서버가 언제 다시 확인할지 개발 범위에 포함합니다.

refund-request-approval-flow-image-4
refund-request-approval-flow-image-4

출시 전에는 권한표를 실제 업무 시나리오로 확인합니다

권한표를 작성한 뒤에는 운영 담당자와 하루 업무를 따라가 봅니다. 고객 문의를 받고 주문을 찾은 다음 환불 요청을 올려 책임자의 승인을 받는 과정을 직접 확인합니다. 필요한 데이터가 안 보여 공용 관리자 계정을 빌려 쓰게 된다면 권한을 지나치게 좁힌 부분이 없는지 살펴봐야 합니다.

반대로 업무와 무관한 고객정보를 내려받거나 다른 스토어의 내용을 바꿀 수 있다면 허용 범위를 줄입니다. 불편할 때마다 전체 권한을 주는 방식으로 해결하면 처음 정한 기준을 유지하기 어렵습니다.

출시 전에 남겨둘 자료는 복잡할 필요가 없습니다. 역할별 권한표와 승인 흐름, 권한 부여·회수 절차, 허용 및 거절 테스트 사례를 한곳에 모아 두면 됩니다. 환불이나 계좌 변경처럼 중요한 작업은 실행자와 대상, 시각, 변경 내용을 기록하는지도 확인합니다.

관리자 페이지의 권한은 회사의 업무 분담을 제품 안에 옮기는 작업입니다. 직급이 같아도 담당 범위가 다르고 같은 사람도 업무에 따라 요청자나 승인자가 됩니다. 이 차이를 기획에서 정리해 두면 디자인과 개발팀도 어떤 정보와 버튼을 누구에게 보여줄지 일관되게 판단할 수 있습니다.

4PS와 관리자 페이지를 준비한다면 현재 팀의 업무와 승인 절차부터 알려주세요. 필요한 화면을 정리하면서 역할별로 허용할 행위와 데이터 범위, 출시 전 확인할 예외 상황까지 함께 구체화하겠습니다.

Latest Blogs

관리자라는 이름만으로는 업무 범위가 정해지지 않습니다

관리자 페이지를 기획할 때 권한 항목에 관리자, 매니저, 일반 운영자부터 적는 경우가 있습니다. 화면에 넣기는 쉽습니다. 그런데 개발을 시작하면 질문이 쏟아집니다. 매니저는 모든 주문을 볼 수 있나요? 고객 전화번호를 내려받아도 되나요? 환불은 신청만 하나요, 승인까지 하나요?

같은 관리자 페이지를 사용해도 담당 업무는 다릅니다. 고객 문의를 처리하는 직원에게 주문 확인은 필요하지만 정산 계좌를 바꿀 권한까지 줄 이유는 없습니다. 상품을 등록하는 직원도 다른 판매자의 상품을 수정해서는 안 됩니다. 역할 이름만 정하고 넘어가면 이런 차이를 화면을 만들면서 뒤늦게 결정하게 됩니다.

이 글에서는 가상의 쇼핑몰 운영팀을 예로 들어보겠습니다. 고객지원 담당자는 주문을 확인하고 환불을 요청합니다. 운영 책임자는 요청을 검토해 승인합니다. 상품 담당자는 자신이 맡은 브랜드의 상품을 등록하고 수정합니다. 실제 고객사 사례가 아닌 권한 설계 설명을 위한 예시입니다.

권한을 정할 때는 누가 어떤 업무를 수행하는지부터 적습니다. 한 사람이 여러 업무를 맡을 수도 있습니다. 사람이 바뀌어도 업무 기준은 남아야 하므로 직원 이름이나 직급을 권한의 기준으로 삼지 않는 편이 좋습니다.

admin-permission-action-resource-scope-image-1
admin-permission-action-resource-scope-image-1

행위와 대상 범위, 승인 단계를 나누어 적습니다

조회와 실행은 다른 권한입니다

주문 관리 메뉴에 접근할 수 있다는 말만으로는 허용 범위가 충분히 설명되지 않습니다. 주문 조회, 배송지 수정, 환불 요청, 환불 승인, 고객정보 내려받기를 각각 구분해야 합니다. 같은 화면에 있는 버튼이라도 실행 결과와 위험이 다르기 때문입니다.

가상의 쇼핑몰이라면 다음처럼 업무를 적을 수 있습니다.




업무

허용 행위

대상 범위

승인 조건

고객지원

주문 조회, 환불 요청

담당 스토어 주문

환불 실행은 책임자 승인

상품 운영

상품 등록·수정

담당 브랜드 상품

판매 중단은 책임자 승인

운영 책임

환불 승인

담당 스토어 요청

본인이 올린 요청은 별도 검토자 승인

정산 담당

정산 조회

담당 사업자 자료

계좌 변경은 별도 승인

처음부터 모든 업무에 승인 단계를 붙일 필요는 없습니다. 잘못 실행했을 때 되돌리기 어려운 행위부터 검토합니다. 돈이 이동하거나 외부에 공개된 정보가 바뀌는 작업이 여기에 해당합니다. 승인 요청자와 승인자를 분리할지도 함께 정합니다.

같은 기능이라도 볼 수 있는 데이터가 다릅니다

상품 수정 권한이 있다고 해서 모든 상품을 수정해도 되는 것은 아닙니다. 담당 브랜드, 소속 스토어, 고객사처럼 데이터의 범위를 제한해야 합니다. 조회에는 전화번호 일부만 표시하고 원문 열람에는 별도 권한을 두는 방식도 검토할 수 있습니다.

개발팀에는 역할 이름과 함께 허용 행위, 대상 범위, 추가 조건을 전달합니다. 예를 들어 상품 담당자는 담당 브랜드의 상품 설명을 수정할 수 있지만 가격 변경은 책임자 승인을 받아야 한다고 적습니다. 문장으로 읽었을 때 판단이 엇갈리는 항목은 구현 전 업무 담당자와 다시 확인합니다.

역할별 권한표가 너무 커진다면 사용하지 않는 선택지를 늘리기보다 현재 운영에 필요한 업무 묶음부터 만듭니다. 처음에는 좁게 허용하고 실제 업무에서 필요한 권한을 검토해 추가하는 최소 권한 원칙을 적용합니다.

버튼을 숨긴 다음에는 서버의 거절을 확인합니다

화면에 없다는 사실만으로 접근이 차단되지는 않습니다

환불 승인 권한이 없는 직원에게 승인 버튼을 숨기면 화면은 이해하기 쉬워집니다. 하지만 이것만으로는 환불 실행을 막았다고 볼 수 없습니다. 사용자가 저장해 둔 주소로 직접 접근하거나 API 요청을 보내는 상황에서도 서버가 권한을 확인해야 합니다.

확인 범위는 로그인 여부에서 끝나지 않습니다. 요청한 사람이 해당 행위를 실행할 권한이 있는지, 요청 대상이 담당 스토어나 브랜드 안에 있는지, 현재 상태에서 실행해도 되는지를 함께 검사합니다. 다른 스토어의 주문 번호를 넣었을 때 요청을 거절하는지까지 확인해야 합니다.

새 기능을 추가할 때 권한을 따로 지정하지 않았다는 이유로 모든 운영자에게 열어두는 방식도 피합니다. 기본은 거절로 두고 허용할 업무를 명시합니다. 화면 안내와 서버 검증에 같은 권한 기준을 사용하도록 관리해야 합니다.

역할이 바뀐 상황도 테스트합니다

정상 업무를 수행하는 테스트만으로는 부족합니다. 고객지원 담당자가 환불을 요청하는 흐름과 함께 승인 API를 직접 호출했을 때 거절되는지도 점검합니다.

  • 담당 브랜드의 상품은 수정되지만 다른 브랜드의 상품은 거절되는가?

  • 환불 요청자가 자신의 요청을 승인하려 하면 차단되는가?

  • 승인 대기 중인 요청의 금액이 바뀌면 다시 검토하도록 처리되는가?

  • 역할을 회수한 뒤에도 기존 로그인 상태에서 작업이 실행되는가?

  • 화면과 내려받기 파일에 동일한 데이터 범위 제한이 적용되는가?

역할 변경 시 권한을 언제부터 반영할지도 정해야 합니다. 새 로그인부터 적용하는지, 기존 세션과 토큰에도 반영하는지에 따라 회수 직후의 동작이 달라집니다. 개인정보 열람이나 환불 승인처럼 민감한 업무는 변경된 권한을 서버가 언제 다시 확인할지 개발 범위에 포함합니다.

refund-request-approval-flow-image-4
refund-request-approval-flow-image-4

출시 전에는 권한표를 실제 업무 시나리오로 확인합니다

권한표를 작성한 뒤에는 운영 담당자와 하루 업무를 따라가 봅니다. 고객 문의를 받고 주문을 찾은 다음 환불 요청을 올려 책임자의 승인을 받는 과정을 직접 확인합니다. 필요한 데이터가 안 보여 공용 관리자 계정을 빌려 쓰게 된다면 권한을 지나치게 좁힌 부분이 없는지 살펴봐야 합니다.

반대로 업무와 무관한 고객정보를 내려받거나 다른 스토어의 내용을 바꿀 수 있다면 허용 범위를 줄입니다. 불편할 때마다 전체 권한을 주는 방식으로 해결하면 처음 정한 기준을 유지하기 어렵습니다.

출시 전에 남겨둘 자료는 복잡할 필요가 없습니다. 역할별 권한표와 승인 흐름, 권한 부여·회수 절차, 허용 및 거절 테스트 사례를 한곳에 모아 두면 됩니다. 환불이나 계좌 변경처럼 중요한 작업은 실행자와 대상, 시각, 변경 내용을 기록하는지도 확인합니다.

관리자 페이지의 권한은 회사의 업무 분담을 제품 안에 옮기는 작업입니다. 직급이 같아도 담당 범위가 다르고 같은 사람도 업무에 따라 요청자나 승인자가 됩니다. 이 차이를 기획에서 정리해 두면 디자인과 개발팀도 어떤 정보와 버튼을 누구에게 보여줄지 일관되게 판단할 수 있습니다.

4PS와 관리자 페이지를 준비한다면 현재 팀의 업무와 승인 절차부터 알려주세요. 필요한 화면을 정리하면서 역할별로 허용할 행위와 데이터 범위, 출시 전 확인할 예외 상황까지 함께 구체화하겠습니다.

Latest Blogs