X-Git-Url: http://git.cascardo.info/?p=cascardo%2Fipsilon.git;a=blobdiff_plain;f=ipsilon%2Fproviders%2Fopenidp.py;h=08890a226ec0c12cff06b874798d7da197306490;hp=7b53f780940985fd95c5ad1ed13d6829c00e776a;hb=a7232b6ff6edfcbe36dd44fc0419a71099fda4cb;hpb=6b37bf2965a5c66cbe0f2a1def92a815170c4ce3 diff --git a/ipsilon/providers/openidp.py b/ipsilon/providers/openidp.py index 7b53f78..08890a2 100755 --- a/ipsilon/providers/openidp.py +++ b/ipsilon/providers/openidp.py @@ -5,6 +5,7 @@ from __future__ import absolute_import from ipsilon.providers.common import ProviderBase +from ipsilon.providers.openid.store import OpenIDStore from ipsilon.providers.openid.auth import OpenID from ipsilon.providers.openid.extensions.common import LoadExtensions from ipsilon.util.plugin import PluginObject @@ -12,8 +13,6 @@ from ipsilon.util import config as pconfig from ipsilon.info.common import InfoMapping from openid.server.server import Server -# TODO: Move this to the database -from openid.store.memstore import MemoryStore class IdpProvider(ProviderBase): @@ -32,6 +31,10 @@ Provides OpenID 2.0 authentication infrastructure. """ self.new_config( self.name, + pconfig.String( + 'database url', + 'Database URL for OpenID temp storage', + 'openid.sqlite'), pconfig.String( 'default email domain', 'Used for users missing the email property.', @@ -96,7 +99,9 @@ Provides OpenID 2.0 authentication infrastructure. """ return self.page def init_idp(self): - self.server = Server(MemoryStore(), op_endpoint=self.endpoint_url) + self.server = Server( + OpenIDStore(self.get_config_value('database url')), + op_endpoint=self.endpoint_url) # Expose OpenID presence in the root headers = self._root.default_headers