Auth_OpenID_OpenIDStore
This is the interface for the store objects the OpenID library
uses. It is a single class that provides all of the persistence mechanisms that the OpenID library needs, for both servers and consumers. If you want to create an SQL-driven store, please see then Auth_OpenID_SQLStore class.
Located in /openid/Auth/OpenID/Interface.php (line 26)
Auth_OpenID_OpenIDStore
Class | Description |
---|---|
Auth_OpenID_FileStore | This is a filesystem-based store for OpenID associations and |
Auth_OpenID_DumbStore | This is a store for use in the worst case, when you have no way of saving state on the consumer site. Using this store makes the consumer vulnerable to replay attacks, as it's unable to use nonces. Avoid using this store if it is at all possible. |
Auth_OpenID_SQLStore | This is the parent class for the SQL stores, which contains the logic common to all of the SQL stores. |
This method returns an Association object from storage that matches the server URL and, if specified, handle. It returns null if no such association is found or if the matching association is expired.
If no handle is specified, the store may return any association which matches the server URL. If multiple associations are valid, the recommended return value for this method is the one that will remain valid for the longest duration.
This method is allowed (and encouraged) to garbage collect expired associations when found. This method must not return expired associations.
- string $server_url: The URL of the identity server to get the association for. Because of the way the server portion of the library uses this interface, don't assume there are any limitations on the character set of the input string. In particular, expect to see unescaped non-url-safe characters in the server_url field.
- mixed $handle: This optional parameter is the handle of the specific association to get. If no specific handle is provided, any valid association matching the server URL is returned.
- Auth_OpenID_FileStore::getAssociation() : Retrieve an association. If no handle is specified, return the association with the most recent issue time.
- Auth_OpenID_DumbStore::getAssociation() : This implementation always returns null.
- Auth_OpenID_SQLStore::getAssociation()
This method returns a key used to sign the tokens, to ensure that they haven't been tampered with in transit. It should return the same key every time it is called. The key returned should be AUTH_KEY_LEN bytes long.
- Auth_OpenID_FileStore::getAuthKey() : Retrieve the auth key from the file specified by $this->auth_key_name, creating it if it does not exist.
- Auth_OpenID_DumbStore::getAuthKey() : This method returns the auth key generated by the constructor.
- Auth_OpenID_SQLStore::getAuthKey()
This method must return true if the store is a dumb-mode-style store. Unlike all other methods in this class, this one provides a default implementation, which returns false.
In general, any custom subclass of Auth_OpenID_OpenIDStore won't override this method, as custom subclasses are only likely to be created when the store is fully functional.
- Auth_OpenID_DumbStore::isDumb() : This store is a dumb mode store, so this method is overridden to return true.
This method removes the matching association if it's found, and returns whether the association was removed or not.
- string $server_url: The URL of the identity server the association to remove belongs to. Because of the way the server portion of the library uses this interface, don't assume there are any limitations on the character set of the input string. In particular, expect to see unescaped non-url-safe characters in the server_url field.
- string $handle: This is the handle of the association to remove. If there isn't an association found that matches both the given URL and handle, then there was no matching handle found.
- Auth_OpenID_FileStore::removeAssociation() : Remove an association if it exists. Do nothing if it does not.
- Auth_OpenID_DumbStore::removeAssociation() : This implementation always returns false.
- Auth_OpenID_SQLStore::removeAssociation()
Removes all entries from the store; implementation is optional.
- Auth_OpenID_SQLStore::reset() : Resets the store by removing all records from the store's tables.
This method puts an Association object into storage, retrievable by server URL and handle.
- string $server_url: The URL of the identity server that this association is with. Because of the way the server portion of the library uses this interface, don't assume there are any limitations on the character set of the input string. In particular, expect to see unescaped non-url-safe characters in the server_url field.
- Association $association: The Association to store.
- Auth_OpenID_FileStore::storeAssociation() : Store an association in the association directory.
- Auth_OpenID_DumbStore::storeAssociation() : This implementation does nothing.
- Auth_OpenID_SQLStore::storeAssociation()
Stores a nonce. This is used by the consumer to prevent replay attacks.
- string $nonce: The nonce to store.
- Auth_OpenID_FileStore::storeNonce() : Mark this nonce as present.
- Auth_OpenID_DumbStore::storeNonce() : This implementation does nothing.
This method is called when the library is attempting to use a nonce. If the nonce is in the store, this method removes it and returns a value which evaluates as true. Otherwise it returns a value which evaluates as false.
This method is allowed and encouraged to treat nonces older than some period (a very conservative window would be 6 hours, for example) as no longer existing, and return False and remove them.
- string $nonce: The nonce to use.
- Auth_OpenID_FileStore::useNonce() : Return whether this nonce is present. As a side effect, mark it as no longer present.
- Auth_OpenID_DumbStore::useNonce() : In a system truly limited to dumb mode, nonces must all be accepted. This therefore always returns true, which makes replay attacks feasible.
- Auth_OpenID_SQLStore::useNonce()
Documentation generated on Mon, 05 Mar 2007 21:08:44 +0000 by phpDocumentor 1.3.1