본문으로 건너뛰기

멤버와 가입 코드

팀 코드는 로그인 비밀번호가 아니라 가입(join) 코드다. 팀원은 이 코드로 자기 개인 계정을 직접 만든다(D-013).

언제 쓰나​

  • 새 팀원에게 가입 코드를 전달할 때
  • 팀원 목록과 마지막 로그인을 확인할 때
  • 퇴사·권한 회수로 특정 팀원 접근을 즉시 끊을 때
  • 코드가 유출된 것 같아 새 가입을 막고 싶을 때

화면​

팀 멤버팀 멤버

팀 관리에서 팀을 고르면 아래에 팀 멤버 카드가 있다.

요소설명
팀 멤버 N · 가입 코드로 셀프 가입멤버 수와 가입 방식 안내
이름팀원이 가입 시 정한 표시 이름(display_name)
아이디로그인 아이디(username). 팀 안에서 유일
마지막 로그인최근 로그인 시각. 미로그인은 -
상태활성 또는 비활성
비활성화 / 활성화접근을 끊거나 되살린다
팀 코드 초기화팀 설정 카드에 있다. 새 가입 코드를 발급한다

절차​

가입 코드 전달​

  1. 팀을 생성하면 가입 코드가 한 번 표시된다(팀 생애주기 참고). 안전한 채널로 팀원에게 전달한다.
  2. 팀원은 로그인 화면의 팀 코드로 가입에서 조직·팀을 고르고 코드를 넣은 뒤 자기 아이디와 비밀번호를 만든다.
  3. 가입 직후 팀원이 자동 로그인되고, 팀 멤버 목록에 나타난다.

팀원 비활성화·활성화​

  1. 끊을 팀원 행의 비활성화를 누른다.
  2. is_active가 false가 되고 다음 요청부터 즉시 차단된다. 매 요청마다 활성 상태를 검증하기 때문이다.
  3. 되살리려면 활성화를 누른다.

비활성화된 팀원이 로그인이나 API 호출을 시도하면 member_deactivated로 거부된다.

가입 코드 초기화​

  1. 팀 설정 카드의 팀 코드 초기화를 누른다.
  2. 새 코드가 발급되고 모달에 한 번만 전체 표시된다. 내부적으로 code_version이 1 올라간다.
  3. 초기화는 신규 가입만 차단한다. 기존 팀원 계정과 세션은 그대로 유지된다.

이렇게 되면 정상​

  • 가입: 팀원이 팀 멤버 목록에 활성 상태로 나타나고 아이디가 채워진다.
  • 비활성화: 상태가 비활성으로 바뀌고 행이 흐려진다. 그 팀원의 진행 요청이 곧바로 막힌다.
  • 코드 초기화: 새 코드로 가입한 팀원만 들어올 수 있고, 기존 팀원은 아무 영향 없이 계속 로그인한다.
  • 이 모든 행위는 사용 로그에 member.deactivate / member.activate / team.reset_code로 남는다.

막히는 경우​

증상원인조치
팀원이 username_taken으로 가입 실패같은 팀에 이미 그 아이디가 있음다른 아이디로 가입하도록 안내
비활성화했는데 아직 접근됨이미 발급된 화면이 캐시로 남은 순간다음 API 요청에서 차단된다. 즉시 세션까지 끊으려면 코드 초기화가 아니라 자원 회수·강제 중지를 병행
유출 우려로 코드를 바꿨는데 기존 팀원까지 막고 싶다코드 초기화는 신규 가입만 차단개별 팀원을 비활성화한다
가입 코드를 다시 보고 싶다코드는 발급 시 1회만 평문 표시(해시만 저장)팀 코드 초기화로 새 코드를 발급받는다

알아둘 것​

  • 팀 코드는 가입용이다. 로그인은 개인 아이디·비밀번호로 한다. 코드를 바꿔도 이미 만든 계정은 유지된다.
  • 아이디(username)는 팀 스코프에서 유일하다. 다른 팀에 같은 아이디가 있어도 무관하다.
  • 감사 로그가 개인 단위로 남는 이유가 이 구조다. 누가 무엇을 했는지 팀원별로 추적된다.
  • 관리자는 팀원의 비밀번호를 볼 수 없다. 접근 회수는 비활성화로만 한다.
또 다른 질문이 있으십니까? 문의 등록