While doing some testing, I ran into some odd behavior: I found I
still had permission to modify a handle and its values in the handle
admin tool even after the handle for the admin group to which I
belonged was deleted.
Here are the steps to duplicate the behavior. I changed my test
naming authority to 9999 below to protect the innocent.
1. Start handle admin tool, authenticate as 0.NA/9999 admin.
2. Create a new handle for authentication:
9999/ScottAuth
100: HS_ADMIN 0.NA/9999:300
300: HS_PUBKEY Public key for Scott
3. Create a new group authorization handle:
9999/AdminGroup
100: HS_ADMIN 0.NA/9999:300
200: HS_VLIST 9999/ScottAuth:300
4. Create a test handle, with permissions to modify given to
AdminGroup:
9999/TestHandle
100: HS_ADMIN 0.NA/9999:300
101: HS_ADMIN 9999/AdminGroup:200 (ttl:86400)
500: URL http://www.nytimes.com/ (ttl: 86400)
5. Exit the handle tool, start it up again, authenticate with 9999/
ScottAuth, and modify the URL value for 9999/TestHandle,
Up to this point, everything works as expected. You can modify the
handle, once you're authenticated.
6. Exit the admin tool, start it up again, authenticate as 0.NA/
9999, and delete the handle 9999/AdminGroup.
7. Query the handle 9999/AdminGroup, checking "Authoritative". As
expected, I get a "HANDLE NOT FOUND" error.
8. Exit the handle tool, start it up again, authenticate with 9999/
ScottAuth, and modify the URL value for 9999/TestHandle.
Even though the 9999/AdminGroup handle no longer exists, its values
are cached, and you can modify the handle. Is this correct behavior?