docs: mark JWT + Slack interactive resolved; Slack mapping partial; add cross-links (8/28, 9/08, 9/11)
This commit is contained in:
parent
e7f7800523
commit
0698c497f4
@ -9,7 +9,7 @@ rb8001에서 Slack 사용자 ID (예: U0925SXQFDK)를 실제 이름으로 변환
|
|||||||
- search_memories() 함수 정상 작동
|
- search_memories() 함수 정상 작동
|
||||||
- 과거 대화 검색 가능
|
- 과거 대화 검색 가능
|
||||||
|
|
||||||
2. **사용자 이름 매핑**: ❌ 미구현
|
2. **사용자 이름 매핑**: ❌ 미구현 (ID 매핑은 slack_user_mapping 의존 제거, 2025-09-11)
|
||||||
- slack_user_mapping 테이블 없음
|
- slack_user_mapping 테이블 없음
|
||||||
- Slack API를 통한 사용자 정보 조회 미구현
|
- Slack API를 통한 사용자 정보 조회 미구현
|
||||||
|
|
||||||
@ -138,4 +138,4 @@ assert get_user_name("UNKNOWN") == "UNKNOWN"
|
|||||||
## 참고 사항
|
## 참고 사항
|
||||||
- Slack API rate limit: 1분당 50회
|
- Slack API rate limit: 1분당 50회
|
||||||
- users.info API는 user:read 스코프 필요
|
- users.info API는 user:read 스코프 필요
|
||||||
- 사용자 정보는 변경될 수 있으므로 주기적 갱신 필요
|
- 사용자 정보는 변경될 수 있으므로 주기적 갱신 필요
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## 작성일: 2025-08-27 (수정: 2025-08-28)
|
## 작성일: 2025-08-27 (수정: 2025-08-28)
|
||||||
## 작성자: 51123 서버 관리자
|
## 작성자: 51123 서버 관리자
|
||||||
## 상태: ⚠️ PARTIAL - rb8001 JWT 검증 미구현
|
## 상태: ✅ 완료 (2025-08-28)
|
||||||
## 영향 범위: 전체 시스템 (51123, 51124 모든 서비스)
|
## 영향 범위: 전체 시스템 (51123, 51124 모든 서비스)
|
||||||
## 위험 수준: 극도로 높음
|
## 위험 수준: 극도로 높음
|
||||||
|
|
||||||
@ -11,10 +11,10 @@
|
|||||||
## 1. 문제 요약
|
## 1. 문제 요약
|
||||||
|
|
||||||
### 핵심 문제 - 부분 해결
|
### 핵심 문제 - 부분 해결
|
||||||
**JWT 인증 부분 구현 상태**
|
**JWT 인증 구현 상태**
|
||||||
- auth-server: JWT 생성 ✅ (sub에 UUID)
|
- auth-server: JWT 생성 ✅ (sub에 UUID)
|
||||||
- Gateway: JWT 검증 ✅
|
- Gateway: JWT 검증 ✅
|
||||||
- rb8001: JWT 검증 ❌ (2025-08-28 확인)
|
- rb8001: JWT 검증 ✅ (8/28 이후 정상 동작, main.py Depends 적용)
|
||||||
|
|
||||||
**~~추가 발견 (15:25)~~** → ✅ 해결 (15:32): Gateway → rb8001 Authorization 헤더 전달
|
**~~추가 발견 (15:25)~~** → ✅ 해결 (15:32): Gateway → rb8001 Authorization 헤더 전달
|
||||||
- `/home/admin/robeing-gateway/app/main.py:250-252` 수정 완료
|
- `/home/admin/robeing-gateway/app/main.py:250-252` 수정 완료
|
||||||
@ -70,23 +70,14 @@ def get_verified_user(authorization: Optional[str] = Header(None)):
|
|||||||
- ⚠️ JWT 검증 로직은 있지만 실패 시 "default"로 폴백
|
- ⚠️ JWT 검증 로직은 있지만 실패 시 "default"로 폴백
|
||||||
- ❌ 인증 실패를 에러로 처리하지 않음
|
- ❌ 인증 실패를 에러로 처리하지 않음
|
||||||
|
|
||||||
### 2.3 rb8001 (51124:8001) - 완전 미구현
|
### 2.3 rb8001 (51124:8001) - 구현 완료 (8/28)
|
||||||
```python
|
```python
|
||||||
# /home/admin/ivada_project/rb8001/main.py:51-70
|
# /home/admin/ivada_project/rb8001/main.py:51-70
|
||||||
# ❌ JWT_SECRET_KEY 미설정 (.env에 기본값 그대로)
|
# ✅ JWT_SECRET_KEY 환경변수로 설정 (Gateway와 동일)
|
||||||
JWT_SECRET_KEY = "your-jwt-secret-key" # 🔴 51123과 다른 키!
|
# ✅ Authorization Bearer 검증 추가 (verify_jwt_token Depends 적용)
|
||||||
|
|
||||||
@app.post("/api/message")
|
@app.post("/api/message")
|
||||||
async def message_endpoint(request: MessageRequest, req: Request):
|
async def message_endpoint(request: MessageRequest, req: Request):
|
||||||
# X-User-Id 헤더에서 사용자 ID 가져오기
|
# ✅ JWT 검증 후 user_id 추출 (8/28 적용)
|
||||||
user_id = request.user_id
|
|
||||||
if not user_id:
|
|
||||||
user_id = req.headers.get("X-User-Id") # 🔴 헤더만 확인!
|
|
||||||
|
|
||||||
if not user_id:
|
|
||||||
user_id = "web_user" # 🔴 기본값 사용!
|
|
||||||
|
|
||||||
# JWT 검증 코드 전혀 없음!
|
|
||||||
```
|
```
|
||||||
|
|
||||||
**실제 확인 결과**:
|
**실제 확인 결과**:
|
||||||
@ -533,4 +524,4 @@ curl -X POST http://localhost:8100/api/chat \
|
|||||||
1. **Refresh Token 구현** (추후)
|
1. **Refresh Token 구현** (추후)
|
||||||
2. **Rate Limiting 적용** (추후)
|
2. **Rate Limiting 적용** (추후)
|
||||||
3. **JWT 만료 시간 설정** (현재: 무제한)
|
3. **JWT 만료 시간 설정** (현재: 무제한)
|
||||||
4. **로그 모니터링 강화**
|
4. **로그 모니터링 강화**
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
**작성일**: 2025-08-31
|
**작성일**: 2025-08-31
|
||||||
**작성자**: 51123 서버 관리자
|
**작성자**: 51123 서버 관리자
|
||||||
**상태**: 🔴 미해결
|
**상태**: ✅ 해결 (2025-09-11)
|
||||||
**영향**: Slack OAuth 로그인 사용자 모두 기본값(rb8001) 사용
|
**영향**: Slack OAuth 로그인 사용자 모두 기본값(rb8001) 사용
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -78,7 +78,7 @@ Slack OAuth로 로그인한 사용자가 Robeing 워크스페이스에 자동
|
|||||||
|
|
||||||
## 5. 해결 방안
|
## 5. 해결 방안
|
||||||
|
|
||||||
### 수정 필요 코드 (`/home/admin/auth-server/app/providers/slack.py`)
|
### 수정 필요 코드 (`/home/admin/auth-server/app/providers/slack.py`) — 9/11 반영 완료
|
||||||
|
|
||||||
304번 줄 이후 추가:
|
304번 줄 이후 추가:
|
||||||
```python
|
```python
|
||||||
@ -96,7 +96,7 @@ if team_id and user:
|
|||||||
})
|
})
|
||||||
```
|
```
|
||||||
|
|
||||||
### 수동 해결 SQL
|
### 수동 해결 SQL (참고용)
|
||||||
```sql
|
```sql
|
||||||
-- happybell80 사용자 workspace_members 추가
|
-- happybell80 사용자 workspace_members 추가
|
||||||
INSERT INTO workspace_members (user_id, workspace_id, robeing_id)
|
INSERT INTO workspace_members (user_id, workspace_id, robeing_id)
|
||||||
@ -105,4 +105,4 @@ VALUES (
|
|||||||
'T035VFRKCN6', -- GoodGang Labs team_id
|
'T035VFRKCN6', -- GoodGang Labs team_id
|
||||||
'rb8001'
|
'rb8001'
|
||||||
);
|
);
|
||||||
```
|
```
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## 작성일: 2025-09-01
|
## 작성일: 2025-09-01
|
||||||
## 작성자: 51123 서버 관리자
|
## 작성자: 51123 서버 관리자
|
||||||
## 상태: 🔴 미해결
|
## 상태: 🟡 부분 해결 (2025-09-11)
|
||||||
## 영향: Slack OAuth 로그인 사용자 개인화 불가
|
## 영향: Slack OAuth 로그인 사용자 개인화 불가
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -29,9 +29,9 @@ auth-server의 Slack OAuth 콜백(`/auth/slack/login/callback`)에서:
|
|||||||
4. ❌ user_preferences 초기화 안 함
|
4. ❌ user_preferences 초기화 안 함
|
||||||
|
|
||||||
## 4. 영향
|
## 4. 영향
|
||||||
- 기본 robeing(rb8001)만 사용
|
- workspace_members 자동 추가 구현됨(9/11), 기본 robeing 할당 정상
|
||||||
- 개인화 설정 불가
|
- slack_user_mapping 의존 제거(9/11) → 이메일/기타 식별 병행
|
||||||
- conversation_logs의 slack_user_id NULL
|
- 상세: [/DOCS/troubleshooting/250831_slack_login_workspace_assignment_issue.md](./250831_slack_login_workspace_assignment_issue.md)
|
||||||
|
|
||||||
## 5. 즉시 해결 (수동)
|
## 5. 즉시 해결 (수동)
|
||||||
```sql
|
```sql
|
||||||
@ -44,4 +44,4 @@ VALUES ('237494f7-061c-484c-a4f7-f500611e32f1', 'T035VFRKCN6', 'rb8001');
|
|||||||
```
|
```
|
||||||
|
|
||||||
## 6. 코드 수정 필요
|
## 6. 코드 수정 필요
|
||||||
`/home/admin/auth-server/app/providers/slack.py` 304번줄 이후 추가 필요
|
`/home/admin/auth-server/app/providers/slack.py` 304번줄 이후 추가 필요
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
**작성일**: 2025-09-08
|
**작성일**: 2025-09-08
|
||||||
**작성자**: happybell80
|
**작성자**: happybell80
|
||||||
**상태**: 구현 필요
|
**상태**: ✅ 해결 (2025-09-08)
|
||||||
|
|
||||||
## 문제 상황
|
## 문제 상황
|
||||||
- CompanyX 뉴스 "홈페이지 게시" 버튼 클릭 시 응답 없음
|
- CompanyX 뉴스 "홈페이지 게시" 버튼 클릭 시 응답 없음
|
||||||
@ -38,4 +38,4 @@
|
|||||||
## 관련 파일
|
## 관련 파일
|
||||||
- robeing-gateway/app/main.py:508 (slack_proxy 참고)
|
- robeing-gateway/app/main.py:508 (slack_proxy 참고)
|
||||||
- rb8001/app/router/slack_handler.py:334 (publish_news_ 처리)
|
- rb8001/app/router/slack_handler.py:334 (publish_news_ 처리)
|
||||||
- rb8001/app/skills/news_posting_skill.py:268 (handle_publish_action)
|
- rb8001/app/skills/news_posting_skill.py:268 (handle_publish_action)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user