Say that I have a rule set that activates when URL.HostBelongsToDomains<FOO> is true.
This rule set provides a coaching page that requests that the AUP for accessing the domains in FOO is accepted. When accepted, the connection is redirected to the original URL.
As with many things of this nature, while we started with FOO, we now have FOO, FOO1, FOO2...FOO10.
Each FOO# has its own rule set of at least 4 rules and subsequent rules also need to be in place for everything to work. It occurred to me tonight that I could utilize PDStorage to help eliminate most of the standard FOO# rulesets by doing this:
Top level criteria: URL.HostBelongsToDomains<BAR> equals true
1) Quota.Coaching.IsActivationRequest.Strict<BAR> equals true, Redirect (original URL), Events: PDSTorage.AddUserData.String (String.Concat ("BAR-",URL.Host),"BAR Accepted")<BAR>
2) PDStorage.GetUserData.String (STring.Concat ("BAR-", URL.Host))<BAR> does not equal "BAR Accepted" AND (Quota.Coaching.SessionExceeded<BAR> equals true OR Quota.Coaching.SessionExceeded<BAR> equals false), Block, Return BAR notification page (which has the coaching activation link)
3) Generic block upload rule
4) PDStorage.GetUserData.STring (String.Concat ("BAR=", URL.Host)<BAR> equals "BAR Accepted", Stop Rule set
This works great for destinations that have a single URL.Host, but breaks down for destinations that utilize multiple domains. In the original concept, we handle this by starting a Coaching session for all connections associated with that specific service and then using that data for future connections.
It seems to me that there should be a way to write multiple values to PDStorage, or perhaps use a PDStorage list? In other words, if foo.com is accessed and other related domains are foo.net, foocloud.com and foocdn.net, is it possible to write all of those domains to PDStorage at the same time? If so, what would the logic for querying against PDSTorage.GetUserData.String be to pull back all of those possible values?
Having multiple lists is okay. The goal is to simplify the actual implementation of access to specific destination domains that have been deemed as being okay.