docs: Slack 로그인 시 Robeing 워크스페이스 미할당 문제 문서화

- Slack OAuth 로그인 후 workspace_members 추가 로직 부재
- SlackWorkspace와 Robeing Workspace 개념 분리 문제
- 모든 Slack 사용자가 기본값 사용하는 현상 설명
- spaceboum, 홍태주 케이스 포함
This commit is contained in:
happybell80 2025-08-31 18:46:43 +09:00
parent 43c46a3027
commit 6268ca3345

View File

@ -0,0 +1,66 @@
# Slack 로그인 시 Robeing 워크스페이스 미할당 문제
**작성일**: 2025-08-31
**작성자**: 51123 서버 관리자
**상태**: 🔴 미해결
**영향**: Slack OAuth 로그인 사용자 모두 기본값(rb8001) 사용
---
## 1. 문제 상황
Slack OAuth로 로그인한 사용자가 Robeing 워크스페이스에 자동 할당되지 않음
### 테스트 케이스
- spaceboum (Google 로그인): workspace_members 없음 → 기본값 rb8001
- 홍태주 (Slack 로그인): workspace_members 없음 → 기본값 rb8001
---
## 2. 현재 로직 분석
### auth-server의 Slack 로그인 처리 (`app/providers/slack.py`)
1. **Slack 정보 수집**: ✅
- team_id (Slack 워크스페이스 ID)
- slack_user_id (Slack 사용자 ID)
- email, name, picture
2. **SlackWorkspace 조회**: ✅
- team_id로 SlackWorkspace 테이블 조회
- slack_user_mapping에서 기존 매핑 확인
3. **User 생성/조회**: ✅
- 매핑 있으면: 기존 User 사용
- 매핑 없으면: 새 User 생성
4. **workspace_members 추가**: ❌ **없음**
- Robeing 워크스페이스 할당 로직 부재
- SlackWorkspace ≠ Robeing Workspace (별개 개념)
---
## 3. 데이터베이스 구조 문제
| 테이블 | 용도 | 상태 |
|--------|------|------|
| users | 사용자 정보 | ✅ 생성됨 |
| slack_user_mapping | Slack ID ↔ UUID | ✅ 생성됨 |
| SlackWorkspace | Slack 팀 정보 | ✅ 조회됨 |
| workspaces | **Robeing 워크스페이스** | ❌ 연결 안 됨 |
| workspace_members | **Robeing 멤버십** | ❌ 추가 안 됨 |
---
## 4. 영향
- 모든 Slack 로그인 사용자가 workspace_members 없음
- Gateway가 기본값(rb8001 또는 rb10508) 사용
- 사용자별 Robeing 할당 불가능
---
## 5. 해결 방안
1. **즉시 조치**: 수동으로 workspace_members 추가
2. **장기 개선**: Slack 로그인 시 자동 워크스페이스 할당 로직 구현