You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
credential 생성은 organization owner/manager를 기준으로 제한하고, 삭제/동기화는 owner-only가 아니라 permission helper를 거친다.
LLM client 선택은 다음 순서를 따른다.
1. 요청 model_id 확인
2. active organization 확인
3. 해당 model을 지원하는 verified credential 후보 조회
4. 후보 credential 중 current user가 use 권한을 가진 credential만 남김
5. 우선순위가 있으면 llm_rel_credential_models.priority, 없으면 안정적인 기준으로 하나 선택
6. 없으면 fail-closed
목표
use권한과 credential-model relation을 함께 검증한다.관련 Linear
구현 범위:
llm_credentials.organization_id를 active organization 기준으로 저장/조회한다.read권한 기준으로 제한한다.manager권한 기준으로 제한한다.use권한을 확인한다.llm_rel_credential_models.is_verified와 credential permission을 함께 평가한다.llm_usage_logs.organization_id,workflow_id,workflow_run_id,node_id를 가능한 범위에서 채운다.구현 방법
apps/gateway/services/llm_service.py의 user-only credential 조회를 organization-aware query로 바꾼다.Acceptance Criteria
viewer는 credential preview 조회만 가능하고 runtime use는 거부된다.operator또는builder는 LLM node 실행에서 credential을 사용할 수 있다.manager는 기존 credential 삭제/동기화/권한 관리를 할 수 있다.llm_usage_logs에 organization/run/node/model/credential/token/cost/latency를 남긴다.Out of Scope
참고 사항
MVP-01-기반 문서