[AWS] Possible OpenID API for AWS?

Pascal Obry pascal at obry.net
Tue Aug 7 15:19:40 CEST 2012


Jacob,

> As some of you may have noticed, I have spent some time reworking the
> ASF OpenID implementation to work nicely in an AWS application.
> 
> Is this something it might be appropriate to contribute to AWS?

Can you explain more how OpenID works? This is not clear to me, so I
can't comment further.

> Does this package specification make sense?

I think it needs far more comment to understand how it is supposed to
work and to be used. Then I'll be able to comment.

> -------------------------------------------------------------------------------
> 
> generic
>    Host_Name         : String;
>    Logged_In_URI     : String := "/logged_in";

ok...

>    Token_Lifetime    : Duration := 3600.0;
> package AWS.OpenID.Manual_Dispatching is
>    Provider_Parameter_Name : constant String := "openid";
>    Token_Cookie_Name       : constant String := "token";
> 
>    package Log_In is
>       URI : constant String := "/login";

But what URI here, isn't this supposed to be Logged_In_URI?

>       function Service (Request : in AWS.Status.Data) return
> AWS.Response.Data;
>    end Log_In;
> 
>    package Validate is
>       URI : constant String := "/return_to";
>       function Service (Request : in AWS.Status.Data) return
> AWS.Response.Data;
>    end Validate;
> 
>    function Is_Authenticated (Request : in AWS.Status.Data) return Boolean;
> 
>    Not_Authenticated : exception;
> 
>    function Authenticated_As (Request : in AWS.Status.Data) return String;
> end AWS.OpenID.Manual_Dispatching;
> -------------------------------------------------------------------------------
> 
> 
> I've also considered building an "Automatic_Dispatching" version using
> package AWS.Services.Dispatchers.URI:
> 
> -------------------------------------------------------------------------------
> 
> generic
>    Host_Name         : String;
>    Logged_In_URI     : String := "/logged_in";
>    Token_Lifetime    : Duration := 3600.0;
> package AWS.OpenID.Automatic_Dispatching is
>    Provider_Parameter_Name : constant String := "openid";
>    Token_Cookie_Name       : constant String := "token";
> 
>    procedure Register
>                (Dispatcher : in out AWS.Services.Dispatchers.URI.Handler);
> 
>    function Is_Authenticated (Request : in AWS.Status.Data) return Boolean;
> 
>    Not_Authenticated : exception;
> 
>    function Authenticated_As (Request : in AWS.Status.Data) return String;
> end AWS.OpenID.Manual_Dispatching;
> -------------------------------------------------------------------------------

This package should probably moved here: AWS.Services.Dispatches.OpenID.

> These package specifications don't feel quite right, so any feedback is
> welcome.  (Including yelling at me for intruding in the AWS package
> hierarchy.)

Anyway, waiting for your feedback.

Thanks,
Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|    http://www.obry.net  -  http://v2p.fr.eu.org
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver keys.gnupg.net --recv-key F949BD3B



More information about the AWS mailing list