[AWS] Possible OpenID API for AWS?

Jacob Sparre Andersen sparre at nbi.dk
Tue Aug 7 14:54:52 CEST 2012


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?

Does this package specification make sense?

-------------------------------------------------------------------------------
generic
    Host_Name         : String;
    Logged_In_URI     : String := "/logged_in";
    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";
       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;
-------------------------------------------------------------------------------

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

Greetings,

Jacob
-- 
"simply because no one had discovered a cure for the universe as a
  whole - or rather the only one that did exist had been abolished"


More information about the AWS mailing list