작성
·
374
0
.well-known/openid-configuration을 이용해 endpoint 및 정보들을 확인했는데 많은 default 값들이 존재합니다.
여기서 제가 사용하지 않는 정보들을 disable 하는 방법이 있나요??
아래는 .well-known/openid-configuration 호출 시 받은 정보입니다.
{
"issuer": "http://127.0.0.1:6080",
"authorization_endpoint": "http://127.0.0.1:6080/oauth2/authorize",
"device_authorization_endpoint": "http://127.0.0.1:6080/oauth2/device_authorization",
"token_endpoint": "http://127.0.0.1:6080/oauth2/token",
"token_endpoint_auth_methods_supported": [
"client_secret_basic",
"client_secret_post",
"client_secret_jwt",
"private_key_jwt"
],
"jwks_uri": "http://127.0.0.1:6080/oauth2/jwks",
"userinfo_endpoint": "http://127.0.0.1:6080/userinfo",
"end_session_endpoint": "http://127.0.0.1:6080/connect/logout",
"response_types_supported": [
"code"
],
"grant_types_supported": [
"authorization_code",
"client_credentials",
"refresh_token",
"urn:ietf:params:oauth:grant-type:device_code"
],
"revocation_endpoint": "http://127.0.0.1:6080/oauth2/revoke",
"revocation_endpoint_auth_methods_supported": [
"client_secret_basic",
"client_secret_post",
"client_secret_jwt",
"private_key_jwt"
],
"introspection_endpoint": "http://127.0.0.1:6080/oauth2/introspect",
"introspection_endpoint_auth_methods_supported": [
"client_secret_basic",
"client_secret_post",
"client_secret_jwt",
"private_key_jwt"
],
"code_challenge_methods_supported": [
"S256"
],
"subject_types_supported": [
"public"
],
"id_token_signing_alg_values_supported": [
"RS256"
],
"scopes_supported": [
"openid"
]
}
답변 2
0
음..
spring authorization server 에서 기본적으로 지원하는 기능을 비활성화 하는 부분에 대해서 구체적인 가이드를 저도 보지는 못했습니다.
다만 .well-known/openid-configuration 에 나와 있는 내용들은 인가서버의 각 기능들에 대한 지원여부를 안내하는 것인데 어떤 기능들을 사용하지 않기 위해서 해당 기능을 비활성화 할 수는 있지만 .well-known/openid-configuration 의 전체 내용에서 제외되는 것인지는 저도 확인하지 못했습니다.
이 부분은 조금 더 소스 차원에서 파악해야 할 것 같습니다.
0
안녕하세요, 인프런 AI 인턴입니다.
사용하지 않는 OAuth 인증 서버의 엔드포인트를 비활성화하는 방법에 대해 알려드리겠습니다. Spring Boot 환경에서는 application.properties
또는 application.yml
설정 파일을 통해 필요한 엔드포인트만 활성화하도록 설정할 수 있습니다. 예를 들어, 애플리케이션에 필요하지 않은 엔드포인트를 비활성화하려면 해당 엔드포인트에 대한 프로퍼티를 false
로 설정하면 됩니다.
다음은 몇 가지 예시입니다:
Properties 파일 예시:
spring.security.oauth2.authorizationserver.endpoint.authorization-uri.enabled=false
spring.security.oauth2.authorizationserver.endpoint.token-uri.enabled=false
spring.security.oauth2.authorizationserver.endpoint.introspection-uri.enabled=false
spring.security.oauth2.authorizationserver.endpoint.revocation-uri.enabled=false
# 여기에 더 많은 엔드포인트 설정을 추가할 수 있습니다.
Yaml 파일 예시:
spring:
security:
oauth2:
authorizationserver:
endpoint:
authorization-uri:
enabled: false
token-uri:
enabled: false
introspection-uri:
enabled: false
revocation-uri:
enabled: false
# 여기에 더 많은 엔드포인트 설정을 추가할 수 있습니다.
이와 같이 설정을 추가함으로써 사용하지 않을 엔드포인트를 비활성화할 수 있습니다. 설정의 정확한 키는 사용하고 있는 Spring Boot의 버전과 구성에 따라 달라질 수 있습니다. 공식 문서를 참고하여 관련 프로퍼티를 확인해주시기 바랍니다.
관련된 자세한 내용을 참고하고자 하시면, Spring Boot Reference Documentation - Security Properties에서 추가적인 정보를 얻으실 수 있습니다.