계정과 워크스페이스 접근
계정은 dtxWiki 서버에 로그인하는 사용자 정보입니다. 워크스페이스 멤버십은 어느 공유 공간에 들어갈 수 있고 무엇을 할 수 있는지 정합니다. 서버 관리자는 설치 전체를 운영하고 계정 복구를 시작할 수 있습니다. 각각 다른 책임입니다.
이미지를 크게 보기
가상의 연습 자료를 사용한 dtxWiki 실제 화면입니다.
역할 선택
| 워크스페이스 역할 | 주로 필요한 사람 | 주요 권한 |
|---|---|---|
| 뷰어(Viewer) | 지식을 찾아 읽는 동료 | 접근 가능한 내용을 읽고 읽기 화면 사용. 편집 동작은 제한 |
| 편집자(Editor) | 지식을 작성하는 사람 | 검토·정책에 따라 컨텍스트 작성과 수정, 에이전트 초안과 채팅 작업 |
| 소유자(Owner) | 해당 공간 운영 책임자 | 편집자 권한과 멤버·역할·공유·워크스페이스 정책 관리 |
역할 외에도 페이지 상태, 자료 민감도, 검토 정책에 따라 가능한 동작이 달라집니다. 예를 들어 제출하지 않은 비공개 편집은 작성자만 볼 수 있습니다. 편집자 역할이라고 모든 보호된 동작을 할 수 있는 것은 아닙니다.
멤버십은 특정 폴더나 페이지가 아닌 워크스페이스 전체에 적용됩니다. 일부 자료만 공유하려면 해당 자료를 위한 공동 워크스페이스를 만드세요. 개인 워크스페이스에 사람을 추가하면 그 공간의 접근 대상도 바뀝니다.
기존 계정을 워크스페이스에 추가
워크스페이스 소유자로 진행합니다.
- 공유하려는 워크스페이스가 선택되어 있는지 확인합니다.
- 설정 → 멤버 및 접근을 엽니다.
- 멤버 찾기 또는 추가에 정확한 전체 로그인 이메일을 입력합니다. 이름 일부는 기존 멤버 검색용이며, 추가하려면 활성 계정의 정확한 이메일이 필요합니다.
- 초기 역할을 선택합니다. 읽기만 필요한 사람은 뷰어로 시작합니다.
- 확인 안내를 읽고 추가합니다. 목록에 올바른 계정과 역할이 표시되는지 확인합니다.
여기에 이메일을 입력해도 계정이 새로 만들어지거나 가입 초대가 발송되지 않습니다. 계정이 없다면 서버 관리자에게 먼저 생성을 요청하세요.
소유자로 변경하면 멤버·공유·정책·다른 소유자를 관리할 권한을 줍니다. 멤버를 제거하면 워크스페이스 전체 접근을 잃습니다. 내 소유자 역할을 내려놓으면 다른 소유자가 다시 올려 줘야 하므로 인수인계를 먼저 준비하세요.
검색되는 워크스페이스에 참여하기
워크스페이스 노출 범위와 멤버십은 별개입니다.
- 비공개(Private): 멤버만 발견하고 들어갈 수 있습니다.
- 팀(Team): 해당 서버에 로그인한 사용자가 발견할 수 있으나 입장에는 멤버십이 필요합니다.
- 공개(Public): 방문자가 공개 프로필을 발견할 수 있으나 내부 지식에는 멤버십이 필요합니다.
가입 요청이 열려 있으면 로그인한 비멤버가 참여를 신청할 수 있습니다. 소유자가 멤버 및 접근에서 검토하며, 승인하면 뷰어로 추가됩니다. 작성이 필요하면 소유자가 나중에 역할을 바꿀 수 있습니다.
노출 범위를 공개로 바꿨다고 모든 페이지가 웹에 공개되지는 않습니다. 발행된 컨텍스트 버전을 별도로 웹에 게시해야 합니다. 공유하기를 참고하세요.
서버 계정 만들기
서버 운영자가 진행합니다. 팀·원격 모드는 직접 회원가입이 기본적으로 닫혀 있습니다. systemd 설치에서는:
sudo dtxwiki users add person@example.com
Docker에서는 기존 infra/prod 디렉터리에서:
docker compose exec app dtxwiki users add person@example.com
명령은 8자 이상 비밀번호를 두 번 숨김 입력으로 받고 사용자의 Personal Workspace를 만듭니다. 이메일이 로그인 ID이며 별도의 사용자 이름은 필요하지 않습니다. 초기 정보를 안전하게 전달하고 사용자가 계정 → 비밀번호에서 새 비밀번호를 선택하도록 하세요. 계정 생성만으로 기존 공유 워크스페이스에 추가되지는 않습니다.
가입을 허용한 로컬 설치는 브라우저에서 가입을 선택할 수도 있습니다. 별도의 서버 관리자 권한 부여는 설치와 첫 로그인을 따르세요. 처음 가입한 계정은 워크스페이스 소유자이며 서버 관리자가 자동으로 되지는 않습니다.
운영자는 워크스페이스의 실제 slug, 즉 URL에 쓰는 식별자를 이용해 기존 계정을 추가할 수도 있습니다.
sudo dtxwiki workspace members add person@example.com \
--workspace YOUR_WORKSPACE_SLUG --role viewer
sudo dtxwiki workspace members list --workspace YOUR_WORKSPACE_SLUG
slug를 default라고 가정하지 마세요. 개인 워크스페이스는 사용자별 slug를 사용합니다.
비밀번호 변경과 복구
로그인할 수 있다면 계정 → 비밀번호에서 바꿉니다. 로그인할 수 없다면 서버의 메일 복구가 활성화되어 있을 때 **비밀번호를 잊으셨나요?**를 사용합니다. 이메일 복구는 메일 서비스 설정과 복구 가능한 확인된 이메일이 필요합니다. 그렇지 않으면 워크스페이스 소유자가 아닌 서버 운영자에게 문의하세요.
대표 HTTPS URL을 설정한 서버에서는 운영자가 새 비밀번호를 정하거나 보지 않고 일회용 링크를 발급할 수 있습니다.
sudo dtxwiki users issue-password-reset person@example.com --delivery link
관리자가 발급하는 링크의 기본 만료 시간은 30분이며 표시하려면 대화형 터미널이 필요합니다. 모든 비밀번호 복구는 완료 시 사용자의 브라우저 세션을 종료합니다. 관리자·CLI 복구에서는 발급자 또는 수신자가 요청하면 PAT/MCP/OAuth 자격 증명도 폐기합니다. 계정 탈취가 의심되면 운영자가 --revoke-api-tokens를 사용하세요. 공개 **비밀번호를 잊으셨나요?**에서 시작한 복구는 완료 시 해당 자격 증명을 항상 폐기하므로 이후 AI 앱을 다시 연결해야 합니다.
관리자가 명시적으로 사용하는 --delivery link에는 SMTP가 없어도 되지만 대표 HTTPS URL은 필요합니다. 기본 로컬 HTTP 설치에는 해당 복구 링크 모드가 설정되어 있지 않습니다. 사용자가 메일로 직접 복구하려면 SMTP 설정과 확인된 계정 이메일도 필요합니다. 메일 설정만으로 모든 계정의 이메일이 자동 확인되지는 않습니다.
설정 → 사용자 계정은 서버 관리자의 계정 검색·복구 화면입니다. 서버 관리 권한이 있다고 모든 워크스페이스에 자동으로 참여하지는 않습니다.
AI 접근에는 추가 경계가 있습니다
AI 앱은 내 워크스페이스 멤버십과 해당 공간·동작을 허용하는 자격 증명이 모두 필요합니다. 액세스 키에 공간을 추가해도 내 역할을 넘어설 수 없습니다. 키에서 공간을 제거하면 해당 연결의 접근이 중지됩니다. AI 앱 연결을 참고하세요.
구현 근거: 계정·멤버 관리 명령, 멤버·접근 화면 문구, 복구 화면, 복구·자격 증명 폐기.