설명
OpenAPI 2.0의 OAuth2 accessCode와 implicit 흐름은 authorizationUrl로 사용자를 로그인 및 권한 동의 화면에 연결합니다. 이 값에는 신뢰할 수 있는 인증 서버의 올바른 인가 엔드포인트를 지정해야 합니다.
잠재적 영향
잘못된 주소는 로그인과 권한 동의 실패를 일으킬 수 있습니다. 의도하지 않은 서버를 가리키면 사용자가 그 서버에 인증 정보를 입력할 위험도 있습니다.
해결 방법
authorizationUrl을 인증 제공자가 안내하는 HTTPS 인가 엔드포인트로 설정하십시오. 호스트와 경로를 확인하고 URL의 프래그먼트(# 이후 부분)를 제거하십시오. 신규 연동에는 accessCode 흐름과 PKCE를 사용하십시오.
예시
예시는 잘못된 URL을 바로잡는 부분을 보여 줍니다. 인가 코드 흐름의 tokenUrl도 같은 인증 제공자의 설정에 맞추십시오.
변경 전
yaml
swagger: "2.0"
securityDefinitions:
petstore_auth:
type: oauth2
flow: accessCode
authorizationUrl: https://api.invalid.comp@#any.com/oauth/authorize
tokenUrl: https://api.my.company.com/oauth/token
scopes:
read:pets: read pets
변경 후
yaml
swagger: "2.0"
securityDefinitions:
petstore_auth:
type: oauth2
flow: accessCode
authorizationUrl: https://api.my.company.com/oauth/authorize
tokenUrl: https://api.my.company.com/oauth/token
scopes:
read:pets: read pets