들어오는 헤더를 살펴보는 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
이미 해당 값으로 설정된 경우에만 가능합니다!