연결의 subject 충돌 목록 조회
GET /v1/connections/{connection_id}/subject-conflicts · 권한 users:read
엔터프라이즈(SAML 또는 OIDC) 연결의 SSO subject 충돌을 최신순으로 조회합니다.
subject 충돌은 ID 공급자가 이미 같은 연결에 다른 subject로 연결된 사용자의 확인된 이메일 주소와 함께 새 subject를 보낼 때 기록됩니다. 예를 들어 퇴사한 직원의 메일함을 새 직원에게 할당한 경우에 발생할 수 있습니다. KeenAuth는 새 subject를 자동으로 연결하지 않습니다. 로그인은 sso_subject_conflict와 함께 거부되며, 관리자가 해결할 수 있도록 레코드가 생성됩니다.
- 레코드가 열려 있는 동안 같은 subject로 발생한 추가 로그인은 새 레코드를 만드는 대신 해당 레코드를 업데이트합니다.
- 열린 레코드는 생성된 후 30일이 지나면 만료됩니다.
- 레코드에는 외부 subject나 이메일 주소가 포함되지 않습니다.
레코드는 사용자 계정과 관련되므로 권한은 users:read입니다. 레코드를 해결하려면 users:write가 필요합니다.
요청
| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
connection_id |
path | 예 | 연결 ID(conn_…)입니다. |
limit |
query | 아니요 | 페이지 크기이며, 1–100 사이입니다(기본값 20). |
after / before |
query | 아니요 | list_metadata의 커서입니다. 커서는 이를 생성한 연결에서만 사용할 수 있습니다. |
order |
query | 아니요 | 생성 시간 기준 desc(기본값) 또는 asc입니다. |
응답
200 OK:
{
"data": [
{
"id": "sscf_01j9xr4a6b8c0d2e4f6g8h0j2k",
"connection_id": "conn_01j9xp6q0r1s5t7v9w1x3y5z7b",
"user_id": "usr_01j9xm2n4p6q8r0s2t4v6w8x0y",
"status": "open",
"resolution": null,
"created_at": "2026-10-28T10:00:00Z",
"last_seen_at": "2026-10-28T10:05:00Z",
"expires_at": "2026-11-27T10:00:00Z",
"closed_at": null
}
],
"list_metadata": { "before": null, "after": null }
}
| 필드 | 설명 |
|---|---|
user_id |
확인된 이메일 주소의 소유자이며, 다른 subject로 이미 이 연결에 연결된 사용자입니다. |
status |
open(결정 대기 중), resolved 또는 expired(결정 없이 생성 후 30일이 지나 종료됨)입니다. |
resolution |
same_person 또는 different_person입니다. status가 resolved인 경우에만 설정됩니다. |
last_seen_at |
새 subject로 시도한 가장 최근 로그인 시도입니다. |
closed_at |
레코드가 해결되거나 만료된 시점입니다. 열려 있는 동안에는 null입니다. 만료된 레코드도 null로 표시될 수 있습니다. |
오류
| HTTP | code | 발생 조건 |
|---|---|---|
| 400 | invalid_cursor |
커서 형식이 잘못되었거나 다른 연결 또는 쿼리에 속합니다. |
| 401 | unauthenticated |
자격 증명이 없거나 잘못되었거나 취소되었습니다. |
| 403 | insufficient_permissions |
자격 증명에 users:read 권한이 없습니다. |
| 404 | not_found |
이 환경에 연결이 존재하지 않습니다. |
| 422 | validation_failed |
쿼리 매개변수가 잘못되었습니다(예: limit이 100을 초과함). |
| 429 | rate_limited |
요청 한도를 초과했습니다. Retry-After 기간 후에 다시 시도하십시오. |
| 503 | service_unavailable |
종속 서비스를 일시적으로 사용할 수 없습니다. Retry-After 기간 후에 다시 시도하십시오. |
예제
curl "https://api.eu.keenauth.com/v1/connections/conn_01j9xp6q0r1s5t7v9w1x3y5z7b/subject-conflicts?limit=20" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
keenauth connections subject-conflicts list conn_01j9xp6q0r1s5t7v9w1x3y5z7b --limit 20