跳转到主要内容

django-authtkt用于在多个Django站点之间共享认证(一种单点登录认证)

项目描述

用法

AuthenticationMiddleware之前添加中间件类

MIDDLEWARE_CLASSES = (
    ...
    'authtkt.middleware.AuthTktMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    ...
)

回调

您可以使用回调在第三方应用中填充新创建的用户。

设置

AUTHTKT_CALLBACK = 'yourmodule:update_user'

回调

from sqlalchemy import engine_from_config, Table, MetaData
from django.conf import settings


def update_user(user):
    engine = engine_from_config({'sqlalchemy.url': settings.USER_DB})
    metadata = MetaData(engine)
    users = Table('auth_user', metadata, autoload=True)
    record = users.select(users.c.id==user.id).execute().fetchone()
    for k, v in record.items():
        setattr(user, str(k), v)

手动识别/忘记用户

手动识别用户(例如:设置一个cookie)。您需要设置一个正确的request.user

request.environ['authtkt.identify'](request, response)

手动忘记用户(例如:重置一个cookie)

request.environ['authtkt.forget'](request, response)

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

django-authtkt-0.3.zip (11.4 kB 查看哈希值)

上传时间:

django-authtkt-0.3.tar.gz (6.0 kB 查看哈希值)

上传时间:

由以下支持