Citrix ADC

Cas d ' utilization: mise en cache des privilèges utilisateur

Dans ce cas d ' utilisateur, les privilèges utilisateur(«GOLD»,«SILVER»等)doivent être récupérés à partir d 'un service Web external。

倒réaliser ce cas d 'utilisation, effectuez les opérations suivantes

Créez une légende HTTP pour récupérer les privilèges utilisateur à partir du service Web external。

add policy httpcallout  [-IPAddress ] [-port ] [-vServer ] [-returnType ] [-httpMethod (GET | POST)] [-hostExpr ] [-urlStemExpr ] [-headers …[-parameters …][-bodyExpr ][-fullReqExpr ][-scheme (http | https)] [-resultExpr ][-cacheForSecs ] [-comment ] add policy httpcallout get_user_privilege -ipaddress 10.217.193.84 -port 80 -returnType text -httpMethod GET -hostExpr '"/get_user_privilege"' -resultExpr 'http.res.body(5)' 

Stockez les privilèges dans une变量。

add ns变量 -type  [-scope (global | transaction)][-ifFull (undef | lru)][-ifValueTooBig (undef | truncate)][-ifNoValue (undef | init)][-init ] [-expires ] [-comment ] add ns变量user_privilege_map -type map(text(15),text(10),10000) -expires 1200 add ns assign set_user_privilege -variable $user_privilege_map[client.ip. ip。-set sys.http_callout(get_user_privilege) 

Créez une stratégie pour vérifier s 'il存在déjà une entrée mise en cache pour l ' address IP du客户端;sinon, il applle la légende HTTP pour définir une entrée de mappage pour le客户端。

add cmp policy  -rule  -resAction  add cmp policy set_user_privilege_pol -rule $user_privilege_map.valueExists(client.ip.src)set_user_privilege> 

Créez une stratégie qui压缩si l 'entrée de privilège mise en cache pour le客户端est«GOLD»。

add cmp policy  -rule  -resAction  add cmp policy compress_if_gold_privilege_pol -rule '$user_privilege_map[client.ip.src].eq("GOLD")' -resAction compress 

Liez les stratégies de压缩全球。

bind cmp global  [-priority ] [-state (ENABLED | DISABLED)] [-gotoPriorityExpression ] [-type ] [-invoke ( )] bind cmp global set_user_privilege_pol -priority 10 NEXT bind cmp global compress_if_gold_privilege_pol -priority 20 END 
Cas d ' utilization: mise en cache des privilèges utilisateur