스프링 부트 응용 프로그램이 있고 사용자를 인증하기 위해 keycloak을 사용하고 있습니다. 내 응용 프로그램에서 사용자 이름과 암호를 기다리는 끝점을 만들 계획입니다. 키 클로 크에 로그인하고 사용자 이름/암호가 유효한 경우 액세스 토큰을 요청하고 사용자에게 다시 제공합니다.
이 로그인을 keycloak에 어떻게 할 수 있습니까?
내가보기에 나는
public
클라이언트가 내 keycloak에 사용자 이름/비밀번호를 사용하도록 만들었지 만 여기에는
resource_id
그래서 나는
access_token
에서
confidential
고객.
나는
access_token
공개 클라이언트에서 응답 코드가
200
(따라서 로그인이 성공했습니다) 그런 다음 다른 요청을
confidential
다시 얻을 클라이언트
access_token
실제로 작동하는 것은 무엇입니까?
미리 감사드립니다.
- 답변 # 1
관련 자료
- java - Post REST API 만 작동하고, PUT, GET, DELETE API가 스프링 부트 애플리케이션에서 작동하지 않습니다
- amazon web services - AWS 클라우드에서 앵귤러 4 및 스프링 부트 마이크로 서비스 애플리케이션을 배포하는 방법은 무엇입니까?
- docker - jboss 서버에 배치 된 스프링 부트 어플리케이션을 실행하기위한 dockerfile의 명령
- java - Jenkins Job이 실행하는 Spring Boot 애플리케이션에 Spring 프로파일을 전달하는 방법은 무엇입니까?
- java - 스프링 부트 애플리케이션의 pomxml에 로컬 jar 추가
- java - 스프링 보안 구성을 제공하지 않지만 스프링 보안 애플리케이션이 로그인 페이지로 리디렉션되는 이유는 무엇입니까?
- java - 스프링 부트 애플리케이션의 스프링 이니셜 라이저
- java - CLI arg를 사용하여 스프링 부트 대체 애플리케이션 특성
- Spring Boot 애플리케이션에서 jQuery로 요청 받기
- java - Spring Boot 애플리케이션과 Angular 애플리케이션의 통합
- java - Spring Boot 애플리케이션에서 웹 소켓 및 Shedlock 호환성을 수정하는 방법
- 대상을 공격하는 동안 JSP를 다운로드하지만 HTML이 아닌 스프링 부트 응용 프로그램
- Kubernetes 및 스프링 부트 응용 프로그램을 사용하는 Azure 파일 저장소
- java - 스프링 부트 1 응용 프로그램에서 사용하지 않는 속성을 찾는 방법
- 다른 프로젝트에 의존하는 스프링 부트 응용 프로그램을위한 뚱뚱한 항아리를 만드는 중 예외
- 스프링 부트 + 앵귤러 애플리케이션 작동
- rest - 액추에이터가 포함 된 스프링 부트 애플리케이션
- maven - Keycloak Spring Multitenant 널 포인터 예외
- java - 스프링 부트에서 애플리케이션 컨텍스트 시작 오류
Spring 앱을 올바르게 구성하고 사용자가 사용에 대해 인증되는 Keycloak 클라이언트 인 경우
Authorization Code Flow
(즉,Standard flow Enabled on Keycloak), 사용자가 앱에 로그인하고 Keycloak으로 리디렉션되고 자신을 인증합니다. 사용자가 성공적으로 인증되면 사용자가 리디렉션됩니다 (아마) 다시 앱으로 돌아 가면 해당 앱이 액세스 토큰을 다시 받게됩니다. 그런 다음 해당 액세스 토큰을 사용하여 인증 된 사용자를 대신하여 작업을 수행 할 수 있습니다.RFC 6749 OAuth 2.0 사양에서 다음을 읽을 수 있습니다.
사용하지 않기 때문에순수한웹 브라우저 응용 프로그램 또는 휴대 전화가 아니라안전한 백엔드, 당신은
confidential client
."Resource Owner Password Credentials Grant"(즉,Keycloak에서 활성화 된 직접 액세스 권한). 고객의 기밀 없이도 계속 사용할 수 있습니다. 와 함께
public client
Keycloak의 토큰 요청 :와 함께
confidential client:
당신은 여분의 필드를 얻었다
-d "client_secret=<client_secret>"
.그러나 다음 사항에 유의하십시오.