symfony2中的正则表达式安全模式

Ben*_* B. 4 regex symfony

我正在为REST API开发WSSE身份验证(在symfony2中)

在security.yml中,我必须在pattern参数中放置一个正则表达式来限制url访问.

pattern:   ^/api/.*[^(connect|docs/.*)]
Run Code Online (Sandbox Code Playgroud)

这个正则表达式不起作用,我已经尝试了很多其他组合..

我想限制所有API调用的访问权限,如:

/api/anything **BUT EXCEPT** for /api/connect **OR**  /api/docs/ **OR** /api/docs/anything
Run Code Online (Sandbox Code Playgroud)

Dav*_*son 13

你可以使用负向前瞻:

^/api/(?!(connect|docs/)).*$
Run Code Online (Sandbox Code Playgroud)