[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Handle-info] accessing non-public values in client API (correction)
If my machine is off and the link below doesn't work, see same example at:
http://pilot.apsr.edu.au/public/pi_service/handle-pic.jpg rather than
http://hdl.handle.net/10378.1/2
Scott.
Scott Yeadon wrote:
Hi,
I've been playing with the handle client API and have created a handle
10378.1/2 which has two HS_ADMIN values (itself and the handle server
admin) along with a non-publicly readable value. I am trying to access
the hidden value using a ResolutionRequest with public key
authentication and the server admin handle, i.e.
byte idHandle[] = Util.encodeString("0.NA/10378.1");
PublicKeyAuthenticationInfo pubKeyAuthInfo = new
PublicKeyAuthenticationInfo(idHandle,
300,
<a PrivateKey object>);
ResolutionRequest req = new
ResolutionRequest(Util.encodeString("10378.1/2"), null, null,
pubKeyAuthInfo);
req.ignoreRestrictedValues = false;
AbstractResponse response =
resolver.getResolver().processRequest(req);
The output when trace is set on the resolver is as follows:
Initial request:
sending HDL-UDP request (version=2.1; oc=1; rc=0; snId=0 caCrt auth
expires:Fri Oct 17 00:31:19 EST 2008 10378.1/2 [ ] [ ]) to
150.203.59.132:2641
There is then a challenge:
received HDL-UDP response: version=2.1; oc=1; rc=402; snId=6 caCrt
auth expires:Fri Oct 17 00:31:20 EST 2008
And the response to the auth challenge using public key auth:
sending HDL-UDP request (version=2.1; oc=200; rc=0; snId=6 caCrt auth
expires:Fri Oct 17 00:31:20 EST 2008 / HS_PUBKEY 300:0.NA/10378.1) to
150.203.59.132:2641
But then...
received HDL-UDP response: Error(400): INVALID ADMIN
Note this error only occurs when the "ignoreRestrictedValues" is set
to "false", otherwise I get the two HS_ADMIN values successfully
returned (since no authentication is required as hidden values are
ignored). The admin details (private key, index. handle) are all as I
expect so not sure why it's saying the admin is invalid unless it's
talking about something in the actual HS_ADMIN values (although they
all display fine and I can encode them into AdminRecords on retrieval).
I get this same behaviour on the admin tool when the
ignoreRestrictedValues is unticked.
Can anyone shed some light on what's happening here, it's probably
something really obvious but I haven't been able to spot it looking
through the logs and server code? Is anyone familiar enough with the
code to state what the code is doing to satisfy itself a hidden value
can be returned? (I was going to add some debugging to the
HandleServer class but there are whole set of jars which don't appear
to be part of the source distribution that throw errors when I run an
ant build.)
As a secondary question (which could be related to the above problem),
can I create a HS_ADMIN value which is self-referential i.e. the
handle which the HS_ADMIN value is part of represents an admin-type
user who has certain privileges on their own handle? See
http://hdl.handle.net/10378.1/2 as an example.
Scott.
_______________________________________________
Handle-Info mailing list
Handle-Info@cnri.reston.va.us
http://www.handle.net/mailman/listinfo/handle-info