brunch

관리자페이지(Admin) 기획하기-
2차 인증과 권한

실무자를 위한 실전, 관리자(Admin) 기획

by Paula




브런치에서 관리자 페이지 기획에 관한 개념적 이야기를 두 차례 다뤘지만, 실제 경험이 없는 분들에겐 여전히 추상적으로 느껴질 수 있을 것 같다. 관리자 페이지는 회사 내부 시스템 특성상 입사 전에는 실제 화면을 접할 기회가 적어 심리적인 장벽이 존재하기 때문이다.


앞으로 연재할 이 시리즈는 첫 관리자 페이지 기획에 대해 막막함을 느끼시는 분들과, 관리자 페이지 기획의 실무적 측면이 궁금하신 분들께 구체적이고 실질적인 도움이 되었으면 한다.






관리자페이지는 유저 정보, 금융 데이터 등 민감 정보, 개인정보를 포함하는 경우가 많은 시스템이다. 단순 로그인만으로는 보안 위협에 충분히 대응하기 어려워, 2차 인증(2FA) 도입과 체계적인 계정 권한 관리가 필수적이다. 이번 포스팅에서는 관리자페이지 기획에서 보안 강화가 왜 중요한지, 다양한 2차 인증 방법과 각 방식의 장단점, 그리고 효과적인 계정 권한 체계 설계 방안을 다루어 보겠다.





1. 보안 강화의 필요성과 2차 인증 도입 이유

1) 민감 정보 보호의 중요성

[데이터 유출 방지]

관리자페이지는 개인정보, 거래 내역 등 중요한 데이터를 다루므로 단일 인증 방식으로는 해킹이나 무차별 대입 공격에 취약하다.

[내부 및 외부 위협 대응]

관리자뿐만 아니라 회원 가입 및 로그인 시에도 추가 인증 절차를 도입하면, 계정 도용 등 보안 위협을 효과적으로 차단할 수 있다.


2) 추가 인증 단계의 효과

[비밀번호 유출 시 추가 방어선 마련]

비밀번호가 유출되더라도, 2차 인증을 통해 공격자가 실제로 계정에 접근하기 어렵게 만든다.

[실시간 위험 감지]

로그인할 때마다 2차 인증 절차를 거치면, 의심스러운 접근 시도를 조기에 파악하고 대응할 수 있다.





2. 2차 인증(2FA)의 다양한 방법과 선택 기준

이 외에도 다른 방법들이 있을 수 있지만, 직접 기획에 활용해 본 방법 3가지만 소개한다. 회사의 상황에 맞게 2차 인증 용으로 사용하고 있는 방법을 도입해도 무방하다. 인증방식을 선택했다면, 회원 가입 및 로그인에 대한 유저플로우를 작성하고, 해당 정책을 세우는 것이 중요하다.

1) SMS 기반 인증

[구현 용이]

사용자의 휴대폰으로 일회용 코드를 전송하는 방식으로, 초기 도입 비용이 낮음

[보안 고려 사항]

SMS 스푸핑 등의 위험이 있으므로 보안성이 상대적으로 낮을 수 있음


2) OTP 앱 (예: Google Authenticator, Authy)

[높은 보안성]

시간 기반 일회용 패스워드를 생성하여, 외부 공격에 대해 강력한 방어 수단을 제공

[사용자 편의성]

별도의 앱 설치가 필요하므로 초기 진입 장벽이 있을 수 있음


3) 이메일 기반 인증

[간단한 구현]

가장 쉽게 도입할 수 있는 방법으로, 로그인 시 사용자의 이메일로 인증 코드를 발송 (어드민은 회사 내부 시스템이므로, 사내 메일 도메인에만 발송되도록 하는 게 좋다.)

[적용 사례]

소규모 프로젝트나 빠른 도입이 필요한 환경에서 효과적이며, 기본적인 보안 강화 수단으로 활용 가능


이 중, 3) 이메일 기반 인증으로 간략한 예시를 작성해 보겠다. 먼저 정책을 세워보자면, 정책은 엑셀이나 구글스프레드 시트로 정리하기도 하고, 워드나 컨플루언스에 문서로 정리하기도 한다. 어떻게 예쁘게 정리할지는 자유롭게 방법을 선택하여 정리하면 되고, 필요한 정책 내용이 빠짐없이 작성한다는 가정으로 나열해 보겠다.

[2차 인증 방식 : 이메일 기반 인증]
- 각 로그인 시마다 사내메일로 6자리 코드 발송
- 유효 시간 (5분) 내 입력해야 함
- 가입 시 5자리 가입 코드를 통해 최초 가입 인증
- 로그인 절차 : ID/PW 로그인 -> 6자리 로그인 코드(2차 인증) -> 로그인
- 가입 절차 : 초대메일(초대코드 확인) -> 회원가입 -> 5자리 가입 초대 코드 입력 -> PW/ID 설정 -> 6자리 로그인 코드(2차 인증) -> 로그인

여기서 절차에 작성된 부분은 플로우차트로 정리하면, 추후 개발자와 소통에 용이하고, 화면 정의를 하는 과정의 초안이 될 수 있다.





3. 계정 권한 체계 설계

1) 역할 기반 권한 관리(RBAC)

* RBAC-역할 기반 액세스 제어, ABAC-속성 기반 액세스 제어에 대한 설명은 여기서 다루지 않겠다. 구글 검색을 통해 잘 정리된 개념을 확인하실 수 있다.

[관리자 계정 분류]

슈퍼관리자, 일반 관리자 등 역할에 따라 접근할 수 있는 기능과 데이터 범위를 명확하게 구분한다. 각 역할별로 볼 수 있는 화면, 볼 수 없는 화면, 볼 수는 있지만 수정은 할 수 없는 등 구분이 잘 되어야 한다.

[업무 효율성 증대]

각 관리자에게 필요한 최소한의 권한만 부여하여 불필요한 접근을 차단하고, 업무 효율성을 높인다.



2) 최소 권한 원칙 적용

[보안 리스크 최소화]

각 사용자에게 업무 수행에 꼭 필요한 최소 권한만 부여함으로써, 만약의 보안 사고 시 피해 범위를 축소한다.

[세부 권한 관리]

로그인, 데이터 수정, 회원 가입 등 각 기능별로 세분화된 권한 설정을 도입해, 역할에 맞는 작업만 수행하도록 제한합니다. 각 권한을 설정하는 화면도 어드민에 포함되면 좋습니다. 이때 권한 관리는 대체로 슈퍼관리자(마스터) 권한만 가능하도록 하는 게 좋다.

Group 1739341325.png

권한은 이렇게 간단하게 표기해 줘도 충분하다. 다만, 어드민 복잡도가 높거나 특수한 기능들이 있다면 세부적인 권한 디테일을 정책으로 풀어서 작성해 두어도 좋다.


3) 이력 관리 및 모니터링

[로그 기록 및 분석]

권한 변경, 로그인 시도 등 주요 행위를 모두 기록해 이상 징후를 빠르게 파악할 수 있는 체계를 마련한다.

[정기 점검]

정기적으로 보안 로그를 분석하고 필요시 권한 재조정이나 추가 보안 조치를 실행한다.





관리자페이지 기획에서 보안 강화는 선택이 아닌 필수 요소다. 2차 인증 도입은 민감 정보를 안전하게 보호하는 첫걸음이며, 다양한 인증 방법 중 상황과 필요에 맞는 방식을 선택하는 것이 중요하다. 또한, 체계적인 역할 기반 계정 권한 관리를 통해 내부 보안 위협을 사전에 차단하고, 운영의 효율성을 높일 수 있다.

이러한 보안 전략과 권한 관리 체계를 바탕으로 관리자페이지의 신뢰성을 높여, 조직 전체의 정보 보호를 강화할 수 있다.

keyword
작가의 이전글모바일 웹에서 이미지 업로드: 제약사항과 한계