웹 서비스에서 JSON으로 반환 할 특정 클라이언트 데이터를 식별하려고합니다. 이것이 올바른 길인지 확신 할 수 없으며 조언을 많이 듣고 싶습니다.웹 서비스가 멀티 테넌트 데이터베이스와 상호 작용하는 좋은 방법입니까?
가 현재 작동하는 방법입니다 : 자신이 속한 적절한 COMPANY_ID 사용자를위한
- 데이터베이스 테이블.
- 로그인시 인증 서비스는 토큰 페이로드에 company_id가있는 JWT 토큰을 발행합니다.
- 클라이언트가 토큰과 함께 HTTP 요청을 보내면 서비스가 토큰의 유효성을 확인한 다음 특정 경로가
WHERE company_id = company_id_in_token
을 수행하는 SQL로 데이터를 반환합니다.
내가 실행 해요 붉은 깃발은 다음과 같습니다 토큰 페이로드
- 갖는 사용자 데이터. SSL은이를 무효화 할 것이지만 나쁜 설계가 걱정됩니다.
- 필터링을 위해 테이블마다 에 company_id 열을 포함해야합니다.
제발, 제게 새로운 것을 찢어달라고 부탁드립니다.
toke 링크를 다시 user_id로 설정해야합니까? 그걸 사용하여 company_id를 얻을 수 없습니까? 모든 단일 테이블에 company_id가있는 것과 마찬가지로 company_id없이 조인 할 수있는 경우 회사 테이블에 조인하는 SQL 조인이 쿼리에 포함될 수 있습니다. 그런 다음 해당 테이블에 열을 포함 할 필요가없는 경우 – Dijkgraaf