APIKEY용 RewriteCond

APIKEY용 RewriteCond

들어오는 헤더를 살펴보는 RewriteRule을 만들려고 하는데 APIKey일치하는 문자열이 포함되어 있으면 해당 URL로 리디렉션되므로 액세스할 수 없습니다.

Post 메서드와 함께 Postman을 사용하여 이 시나리오를 테스트하고 있습니다.

아래에서 내 코드를 찾으십시오.

RewriteEngine On
RewriteCond %{REQUEST_URI}  ^/manager/(.*)
RewriteCond %{REQUEST_URI}  ^/manager/secure/rest/groovy-service-invoke/v2/demo/firewall-test/v0.1.0/(.*)$
RewriteCond %{ENV:APIKEY}   ^ABCD123456789$
RewriteRule .* - [E:APIKEY=ABCD123456789]

답변1

/manager/HTTP 요청 헤더에 APIKey특정 값(예: )이 제공되지 않을 때 시작되는 URL 경로에 대한 액세스(예: 403 Forbidden)를 차단하려면 ABCD123456789다음 mod_rewrite 규칙을 사용할 수 있습니다.

RewriteEngine On

RewriteCond %{HTTP:APIKey} !=ABCD123456789
RewriteRule ^/?manager/ - [F]

:
RewriteCond %{ENV:APIKEY}   ^ABCD123456789$
RewriteRule .* - [E:APIKEY=ABCD123456789]

이것은 실제로 아무것도 하지 않습니다. 환경 변수를 APIKEY값으로 설정 ABCD123456789하지만 env var가 APIKEY이미 해당 값으로 설정된 경우에만 가능합니다!

관련 정보