Hi all,
  I'd like to ask you a pre-review on the following branch:
https://gitorious.org/accounts-sso/signon/commits/keymodel
(the first commit to review is cd7d90398e6df31096496c6eaacbd287265472aa)

I'm saying "pre-review" because the code is totally untested, and I'll be submitting another iteration of the branch with the changes that I'll most likely have to apply to make it work properly.

But since this refactoring involves creation of new classes (which will sooner or later be moved to the libsignon-extension API), it's important at least to agree on the naming and APIs of the newly introduced classes:

- KeyHandler: this class aggregates information coming from the key managers,
  and provides a couple of methods for granting and revoking authorization to
  encryption keys.

- AbstractKeyAuthorizer: this class defines the API that will have to be
  implemented by plugins who wish to change the logic of deciding whether a new
  key must be added to the cryptsetup configuration.

The other added class, UiKeyAuthorizer, is a subclass of AbstractKeyAuthorizer and will eventually be moved into a dynamically loadable plugin.


My doubts concern especially the meaning of "authorizing a key", which we have been using in two different contexts: 1) inserting/removing a key into the cryptsetup configuration, so that the key will be usable to mount the encrypted storage;
2) deciding whether the action in (1) has to be taken.
The AbstractKeyAuthorizer tries to avoid the confusion by calling its API "queryKeyAuthorization" (and corresponding signal "keyAuthorizationQueried"), but I wonder if we could find different names for these concepts.

Maybe we could leave the "authorize" word for the action of deciding on the authorization of the key, and use "trust" to mean that a key is stored into the cryptsetup configuration?

Ciao,
  Alberto

--
http://blog.mardy.it <-- geek in un lingua international!
_______________________________________________
MeeGo-dev mailing list
[email protected]
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines

Reply via email to