Package openid :: Package server :: Module server :: Class CheckIDRequest
[frames | no frames]

Type CheckIDRequest

   object --+    
            |    
OpenIDRequest --+
                |
               CheckIDRequest


A request to confirm the identity of a user.

This class handles requests for openid modes checkid_immediate and checkid_setup.
Method Summary
  __init__(self, identity, return_to, trust_root, immediate, assoc_handle, op_endpoint)
Construct me.
  __str__(self)
OpenIDResponse answer(self, allow, server_url, identity, claimed_id)
Respond to this request.
str encodeToURL(self, server_url)
Encode this request as a URL to GET.
CheckIDRequest fromMessage(klass, message, op_endpoint)
Construct me from an OpenID message. (Class method)
str getCancelURL(self)
Get the URL to cancel this request.
bool idSelect(self)
Is the identifier to be selected by the IDP?
bool returnToVerified(self)
Does the relying party publish the return_to URL for this response under the realm? It is up to the provider to set a policy for what kinds of realms should be allowed.
bool trustRootValid(self)
Is my return_to under my trust_root?
Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__

Instance Variable Summary
str assoc_handle: Provided in smart mode requests, a handle for a previously established association.
str claimed_id: The claimed identifier.
str identity: The OP-local identifier being checked.
bool immediate: Is this an immediate-mode request?
str return_to: The URL to send the user agent back to to reply to this request.
str trust_root: "Are you Frank?" asks the checkid request.

Class Variable Summary
str mode: "checkid_immediate" or "checkid_setup"

Instance Method Details

__init__(self, identity, return_to, trust_root=None, immediate=False, assoc_handle=None, op_endpoint=None)
(Constructor)

Construct me.

These parameters are assigned directly as class attributes, see my class documentation for their descriptions.
Raises:
MalformedReturnURL - When the return_to URL is not a URL.
Overrides:
__builtin__.object.__init__

answer(self, allow, server_url=None, identity=None, claimed_id=None)

Respond to this request.
Parameters:
allow - Allow this user to claim this identity, and allow the consumer to have this information?
           (type=bool)
server_url -

DEPRECATED. Passing op_endpoint to the Server constructor makes this optional.

When an OpenID 1.x immediate mode request does not succeed, it gets back a URL where the request may be carried out in a not-so-immediate fashion. Pass my URL in here (the fully qualified address of this server's endpoint, i.e. http://example.com/server), and I will use it as a base for the URL for a new request.

Optional for requests where CheckIDRequest.immediate is False or allow is True.
           (type=str)
identity - The OP-local identifier to answer with. Only for use when the relying party requested identifier selection.
           (type=str or None)
claimed_id -

The claimed identifier to answer with, for use with identifier selection in the case where the claimed identifier and the OP-local identifier differ, i.e. when the claimed_id uses delegation.

If identity is provided but this is not, claimed_id will default to the value of identity. When answering requests that did not ask for identifier selection, the response claimed_id will default to that of the request.

This parameter is new in OpenID 2.0.
           (type=str or None)
Returns:
OpenIDResponse

encodeToURL(self, server_url)

Encode this request as a URL to GET.
Parameters:
server_url - The URL of the OpenID server to make this request of.
           (type=str)
Returns:
str

getCancelURL(self)

Get the URL to cancel this request.

Useful for creating a "Cancel" button on a web form so that operation can be carried out directly without another trip through the server.

(Except you probably want to make another trip through the server so that it knows that the user did make a decision. Or you could simulate this method by doing .answer(False).encodeToURL())
Returns:
The return_to URL with openid.mode = cancel.
           (type=str)

idSelect(self)

Is the identifier to be selected by the IDP?
Returns:
bool

returnToVerified(self)

Does the relying party publish the return_to URL for this response under the realm? It is up to the provider to set a policy for what kinds of realms should be allowed. This return_to URL verification reduces vulnerability to data-theft attacks based on open proxies, corss-site-scripting, or open redirectors.

This check should only be performed after making sure that the return_to URL matches the realm.
Returns:
True if the realm publishes a document with the return_to URL listed
           (type=bool)
Raises:
openid.yadis.discover.DiscoveryFailure - if the realm URL does not support Yadis discovery (and so does not support the verification process).

Since: 2.0.2

See Also: trustRootValid

trustRootValid(self)

Is my return_to under my trust_root?
Returns:
bool

Class Method Details

fromMessage(klass, message, op_endpoint)

Construct me from an OpenID message.
Parameters:
message - An OpenID checkid_* request Message
           (type=openid.message.Message)
op_endpoint - The endpoint URL of the server that this message was sent to.
           (type=str)
Returns:
CheckIDRequest
Raises:
ProtocolError - When not all required parameters are present in the message.
MalformedReturnURL - When the return_to URL is not a URL.
UntrustedReturnURL - When the return_to URL is outside the trust_root.

Instance Variable Details

assoc_handle

Provided in smart mode requests, a handle for a previously established association. None for dumb mode requests.
Type:
str

claimed_id

The claimed identifier. Not present in OpenID 1.x messages.
Type:
str

identity

The OP-local identifier being checked.
Type:
str

immediate

Is this an immediate-mode request?
Type:
bool

return_to

The URL to send the user agent back to to reply to this request.
Type:
str

trust_root

"Are you Frank?" asks the checkid request. "Who wants to know?" trust_root, that's who. This URL identifies the party making the request, and the user will use that to make her decision about what answer she trusts them to have. Referred to as "realm" in OpenID 2.0.
Type:
str

Class Variable Details

mode

"checkid_immediate" or "checkid_setup"
Type:
str

Generated by Epydoc 2.1 on Wed Nov 14 17:47:20 2007 http://epydoc.sf.net