A Forum reader recently asked:
“The “Network Address” field is usually cleared of the previous value, but it is not reliably removed. I’m thinking about using the WorkOrder driver to schedule a <remove-all-values/> for that particular attribute to happen some number of hours after they log in. I was thinking it’d be better if I could schedule it for some number of minutes or hours after they log out.”
And here’s the response from Lothar Haeger …
Have you tried running a regular query for network addresses that have an attribute value timestamp older than xxx hours? You could use something like this:
<do-set-local-variable name="ExpireBefore" scope="policy"> <arg-string> <token-xpath expression="round(jdate:getTime(jdate:new()) div 1000)-~GracePeriod~"/> </arg-string> </do-set-local-variable> <do-for-each> <arg-node-set> <token-xpath expression='query:search($srcQueryProcessor, "~WksSearchScope~","","~WksSearchBase~","Workstation","Network Address","*","Network Address")[attr[@attr-name="Network Address"]/value/@timestamp<$ExpireBefore]'/> </arg-node-set> <arg-actions> <do-clear-src-attr-value name="Network Address"> <arg-dn> <token-xpath expression="$current-node/@src-dn"/> </arg-dn> </do-clear-src-attr-value> </arg-actions> </do-for-each>
Disclaimer: As with everything else at NetIQ Cool Solutions, this content is definitely not supported by NetIQ, so Customer Support will not be able to help you if it has any adverse effect on your environment. It just worked for at least one person, and perhaps it will be useful for you too. Be sure to test in a non-production environment.