Taskforce Mobility Mailarchive
|
Subject |
Re: CUI reloaded |
|
From |
Tomasz Wolniewicz <twoln@xxxxxx> |
|
Date |
Tue, 28 Oct 2008 10:16:11 +0100 |
Hi all,
While implementing the plan described by Stefan, we have made some
observations which seem to be important for accounting in eduroam in
general.
It turns out there is no real standard describing what attributes the
accounting packet should have.
Definitely, there is no requirement that it has the User-Name (which is
generally rather useless as this is only the outer value).
More importantly, there is no requirement that Calling-Station-Id is
present. I have looked at the data from all controllers that we have
tested so far and can confirm that they all contain Calling-Station-Id,
but I also have one example (3COM AP8760) which does NOT send this
attribute.
This observation has two implications.
First - in some cases it may be nearly impossible to bind an accounting
session to an authentication, hence to a particular user. This is
something worth keeping in mind, when one buys a piece of equipment.
There may be other ways of doing this binding (for instance the session
id may contain the Calling-Station-Id, but this very much depends on a
particular piece of hardware).
Second - sending accounting information back to IdP would make life even
more difficult for this IdP, since the IdP has no knowledge or control
over the hardware which is generating those accounting information. This
rather supports my view that accounting information SHOULD NOT be
proxied to the IdP. Having said that, I also realise, that this is a
wonderful case in favour of the CUI. The SP has the CUI from the
authentication, it knows its hardware and may build a custom method to
bind the authentication to accounting, hence it is capable of adding the
correct CUI to the accounting and make things meaningful for the idP :).
Third - the implementation of CUI in accounting can be done, as Stefan
has described, and is under preparation, but in some cases (hopefully
not too many) it may fail.
Cheers
Tomasz
stefan.winter@xxxxxxxxxx wrote:
> IETFs are great - I also had a chat with Alan DeKok about CUI and how
> to satisfy the Accounting binding.
>
> In the end, a rough plan emerged, and it doesn't even involve code
> changes :-)
>
> * use a database for short-term storage of session information
> * table schema: key(Client-IP-Address, Calling-Station-Id, User-Name)
> -> CUI, Creation-Date[auto-update]
> * instantiate a sql module with queries that add/modify/delete rows in
> this table
> - in authorize_query: when adding the NUL CUI request into the
> request, create a new row filling (Client-IP-Address,
> Calling-Station-Id, User-Name) - leaving the CUI field empty
> - in postauth_query: when server sends back CUI, update table with CUI
> - in accounting_start, update: lookup CUI, if exists, add to packet
> - in accounting_stop: delete row
>
>
--
Tomasz Wolniewicz
twoln@xxxxxx http://www.home.umk.pl/~twoln
Uczelniane Centrum Informatyczne Information&Communication Technology Centre
Uniwersytet Mikolaja Kopernika Nicolaus Copernicus University,
pl. Rapackiego 1, Torun pl. Rapackiego 1, Torun, Poland
tel: +48-56-611-2750 fax: +48-56-622-1850 tel kom.: +48-693-032-576