복붙노트

[SPRING] 봄 OAuth2에서 확인 페이지 사용 중지

SPRING

봄 OAuth2에서 확인 페이지 사용 중지

이 GitHub 링크에서 세 개의 상호 연결된 샘플 앱 세트를 분해하여 Spring OAuth2를 연구 중이다. 응용 프로그램은 내 devbox에서 의도 한대로 작동하지만 authserver 응용 프로그램은 사용자가 localhost : 8080 / login에서 클라이언트의 권한을 확인하여 보호 된 정보를 수신하도록 사용자에게 확인하는 불필요한 확인 페이지를 생성합니다. 확인 페이지의 스크린 샷은 다음과 같습니다.

확인 단계를 제거하기 위해 authserver 앱의 코드에 어떤 특별한 변경을해야합니까?

확인 페이지가 특정 사용 사례에서 유용 할 수 있음을 이해합니다. 그러나 확인 페이지는 내가 염두에두고있는 사용 사례에는 적절하지 않으므로이 단계를 어떻게 비활성화 할 수 있습니까?

첫번째 시도:

authorize.ftl에 권한 페이지의보기 코드가 있습니다.이 링크를 클릭하면 읽을 수 있습니다. 그러나 Eclipse 작업 공간에서 Ctrl-H를 눌러 "authorize.ftl"을 검색하면 결과가 표시되지 않습니다. 마찬가지로 Spring OAuth2 Developer Guide를 검토했습니다. 이 가이드의 일부 언급은 별도의 @RequestMappig ( "/ oauth / authorize")를 만드는 것으로 이루어졌지만이 확인 단계를 비활성화하는 방법이 명확하지 않은 것 같습니다.

템플리트 로그인보기의 코드는이 링크에서 읽을 수있는 login.ftl에 있습니다.

해결책은 단순히 login.ftl 코드를 새 login.html 파일로 이동 한 다음 @RequestMappig ( "/ oauth / authorize")로 해당보기를 관리하는 것입니까?

위의 개발자 가이드 링크의 작업을 올바르게 해석하면

1.) GET에 링크 된 @RequestMappig ( "/ oauth / authorize") 메소드는 로그인 뷰를 제공 한 다음 또 다른 @RequestMappig ( "/ oauth / authorize")를 제공합니다.

2.) POST에 연결된 또 다른 @RequestMappig ( "/ oauth / authorize") 메소드는 뷰에서 정보를 가져 와서 확인 단계를 건너 뜁니다.

하지만이 코드는 어떻게 생겼을까요? 내가 올바르게 이해한다면 다음과 같은 출발점이있다.

`@RequestMappig("/oauth/authorize", method = RequestMethod.GET)`
public @ResponseBody SomeType method1Name(){
    SomeType st = new SomeType();
    //do some stuff to st
    return st;
}

`@RequestMappig("/oauth/authorize", method = RequestMethod.POST)`
public @ResponseBody SomeType method2Name(){
    SomeType st = new SomeType();
    //do other stuff to st
    return st;
}

나는이 방법들에 무엇을 넣을 까? 그런 다음 뷰 코드를 삽입 했습니까?

Developer Guide는이 링크에서 GitHub에서 읽을 수있는 WhiteLabelApprovalEndpoint, java로 시작한다고 말합니다.

해결법

  1. ==============================

    1.토큰 부여에 대한 사용자 확인은 선택 사항입니다. 해당 단계를 건너 뛰려면 클라이언트를 autoapprove = "*"로 등록해야합니다. 나는 그것이 사용자 가이드에 있음을 확신한다.

    토큰 부여에 대한 사용자 확인은 선택 사항입니다. 해당 단계를 건너 뛰려면 클라이언트를 autoapprove = "*"로 등록해야합니다. 나는 그것이 사용자 가이드에 있음을 확신한다.

  2. from https://stackoverflow.com/questions/36655518/disable-confirmation-page-in-spring-oauth2 by cc-by-sa and MIT license