2017-12-15 10 views
1

IdentityServer4 API 리소스에 대해 정의 된 비밀이 없으면 보안 취약점이 발생합니까?IdentityServer4 API 자원에 비밀이 필요합니까?

Introspection Endpoint를 사용할 때 다소 혼란 스럽습니다. 누군가가 Introspection 끝점을 사용하여 인증을 무시하고 정의 된 비밀이없는 API에 액세스 할 수 있는지 (API 이름 만있는 POST로 인해) 매개 변수로).

이것이 가능합니까? 또는 클라이언트 자격 증명 부여와 같은 것을 사용하는 정의 된 클라이언트를 통해서만 승인 된 내부 검토 끝점입니까?

답변

0

인트로 스펙 션 엔드 포인트는 게시 된 토큰의 유효성 만 검사하며, 요청에 API 이름을 허용해서는 안됩니다.

참조 토큰 (또는 소비자가 적절한 JWT 또는 암호화 라이브러리를 지원하지 않는 경우 JWT)의 유효성을 검사하는 데 사용할 수 있습니다. 인트로 스펙 션 엔드 포인트는 범위 비밀을 사용하여 인증을 요구합니다.

http://docs.identityserver.io/en/release/endpoints/introspection.html

이 구현해야 엔드 포인트 안

, 그것은는 '여단입니다 알려진/오픈 ID 구성'와 같은 방법으로 신원 서버가 포함되어 있습니다.

이 엔드 포인트의 유스 케이스는 토큰을 전달하는 API이며 유효하고 만료되지 않았거나 유효하지 않은 (유효하지 않은 또는 취소 된) 유효성을 확인하려는 경우 응답에 토큰과 관련된 클레임이 포함됩니다 (사용자가 토큰과 관련된 클레임 포함). 반성의 보안 고려 사항에 대한 고려 범위)

당신이 다시 채널의 전송 요구로 인증 코드 흐름을 사용하는 경우 RFC 7662 Section 4

0

의 API 자원이 클라이언트의 비밀이 필요 참조하십시오.

참조 토큰을 사용하는 경우 액세스 토큰이 절대로 클라이언트에 제공되지 않으므로 참조 토큰이 클라이언트에서 api 자원으로 전달 된 다음 ID 서버로 전달되므로 클라이언트 토큰이 필요합니다 액세스 토큰과 교환합니다.

정말 클라이언트와 흐름에 따라 다릅니다.