适用于NPS的多个IP,范围和子网的正则表达式

问题描述 投票:0回答:1

我试图在服务器2016上使用NPS在几个cisco和Linux设备的公司半径身份验证中拆分不同的团队。

我已将所有IP范围和单个IP添加到Radius客户端,并且可以通过广告用户组成员身份访问它们。既然我想创建更多的AD组并让每个组只能访问设备的子集,那么我正在努力解决“client ipv4 address”字段中所需的正则表达式,以包括每个组的所有设备。

以下内容适用于第一组需要访问的99%的设备。 192.168.1 | 2 | 10 | 11 | 12 | 20 | 21 | 22 .. +然后我想授予它访问10.0.0.99的单个设备(但该范围内没有其他设备)和一些其他单个IP例如172.0.0.45,172.0.0.46,10.10.10.50,10.10.10.52

192.168.x.x范围工作正常,但使用分隔符添加其他IP会停止整个字符串的工作,例如,或或^之前和每组之后的$。

regex windows-server-2016
1个回答
0
投票

尝试使用捕获组。

(192\.168\.(1|2|10|11|12|20|21|22)\..+)|(10\.0\.0\.99)|(172\.0\.0\.45)|(172\.0\.0\.46)|(10\.10\.10\.50)|(10\.10\.10\.52)

Try it online

你的正则表达式也有一些漏洞,因为你没有逃脱.

为了最大限度地提高安全性,请记住反斜杠.,除非它们被用作“通配符”(与任何东西相匹配)。

它还需要在任何(管道周围都有)括号|,否则它们将以您可能不想要的方式进行解释。

有关更多信息,请参阅Microsoft regex page

© www.soinside.com 2019 - 2024. All rights reserved.