Re: trusting multiple auth servers in the 9grid

ron minnich <[email protected]> Tue, 9 Sep 2003 09:06:05 -0600 (MDT)
Newsgroups gmane.os.plan9.nine-grid
Message-ID <[email protected]>
On Tue, 9 Sep 2003, Lucio De Re wrote:

> There doesn't seem any way of escaping the need for each node to have
> unique IDs for users to protect resources.  Nearest would be mapping
> all authenticated but unidentified users to "none" or equivalent.

no, "none" is a bad idea, it's the equivalent of the "globus ID". 

What I was hoping to try is something like the following:

 want to have different grid sites trade resource-hours to start. At some 
point a third-party broker can enter the scene. 

so you 'import somewhere /n/resources /n/somewhere/resources'

then you can read the /n/somewhere/data file, which has stuff like

(group1 (cpus 1 2 3 4) (type k8) (memory 2048M) (network myrinet))

on the ctl file you might write
( (want 'group1 (date ...) (time ...)) (offer 'mygroup (date ...) (time 
...))

in other words, you offer to barter so many resource-hours for so many
resource-hours at a certain time. you write to the ctl file, and the
remote guy responds on the ctl file

(accept 'group1 (nonce 'xyz) (assignable 't)) 

the nonce is used at the date and time you wanted and expires after that
time. In other words, it is a secret known to you and the remote site,
with an expiration date, and it gives you a 'login' to that resource. You
can use it only in the interval that you traded for. Once it is used, it
can not be re-used in the same interval, i.e. you can pass it off, but if
you do, you lose the right to use it yourself. So it is a one-use,
limited-time offer, which may at the remote site's discretion be assigned
by you to others.

You can also 

((want ...) (offer 'free))

to locate free stuff

the offer can also be

(rejected)

or
(counteroffer 'group1 (date ...) (time ...))

The point being that there will come a time when just giving people logins 
won't work all that well. Rather than handle the 'global login problem', 
Globus assigned a Globus user. yuck. 

We can't have global logins, I am assuming (or maybe we can: 6e6 password 
file entries, anyone?); I'm hoping we can do something with these nonces. 

Note you can hide a log of policy in your file system. If joe x. wants 
'group1 for free, you might be willing to give it to them; andrey, on the 
other hand, might have to really pay big. 

I think we need to get to this limited-time-login approach sooner rather 
than later, however.

ron