인증 정보없이 요청 만 할 수있는 클라이언트가 있습니다.
HAProxy 또는 유사한 프록시 솔루션을 사용하여 이러한 클라이언트 요청에 OAuth 인증을 추가하고 싶습니다.
이미 클라이언트 요청에 Bearer 토큰을 추가하는 데 성공했습니다. 일부 자리 표시자가있는 haproxy.cfg에 대해서는 아래를 참조하십시오.
frontend front
mode http
bind *:8080
default_backend servers
http-request add-header Authorization "Bearer {{ .Env.ACCESS_TOKEN}}"
backend servers
mode http
server server1 myserver.com:443 ssl
문제는 액세스 토큰의 TTL이 24 시간이라는 것입니다. 따라서 주기적으로 새로 고침하거나 새 토큰을 받아야합니다.
HAProxy는 이미 이것을 지원합니까?
정기적으로 새 액세스 토큰을 얻고 구성을 업데이트하고 HAProxy를 다시 시작하는 스크립트를 작성할 수 있습니다. Docker에서 HAProxy를 실행할 때 이것이 좋은 접근 방식입니까? 더 나은 솔루션이 있습니까?
을 사용하여 스크립트를 생성 / 테스트 할 수 있습니다. Lua
이제 최신 버전에서 지원됩니다. How Lua가 HAProxy에서 실행되는 방법을 확인하십시오 .
Nginx +를 사용하는 예는 Lua
다음 프로젝트에서 찾을 수 있습니다. https://github.com/jirutka/ngx-oauth
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다