跳转到主要内容

Django openid, oauth认证。支持以下网站:- http://google.com - http://yandex.ru - http://vkontakte.ru - http://facebook.com - http://twitter.com 以及自定义openid和oauth提供者

项目描述

Django netauth 是一个django应用程序,允许通过OpenID/OAuth/Google/Twitter/Facebook/Vkontakte对用户进行认证。示例项目部署在 http://netauth.node42.org/

很抱歉,现在不再支持django-netauth。推荐使用django-socialauth。

要求

  • python >= 2.5

  • django >= 1.2

  • python-openid

  • oauth2

安装

Django netauth 应使用pip安装

pip install django-netauth

设置

  • 将‘netauth’添加到INSTALLED_APPS

    INSTALLED_APPS += ( 'netauth', )
  • 将netauth urls添加到基础urls

    url('auth/', include( 'netauth.urls')),
  • 将netauth后端添加到AUTHENTICATION_BACKENDS

    AUTHENTICATION_BACKENDS += ( 'netauth.auth.NetBackend', )
  • 使用django syncdb命令同步数据库

    ./manage.py syncdb
  • 请参阅以下服务设置。

使用netauth

  1. 使用URL ‘/auth/login’ 作为您的网站的登录点

  2. 使用模板标签 ‘netauth_widget’

  3. 创建自定义界面

额外字段

为了填充可能由您的用户配置文件要求填写的额外字段,您需要在项目的settings.py中设置一些变量。

变量的名称应该是后端的大写名称加 “_PROFILE_MAPPING”。例如:GOOGLE_PROFILE_MAPPING, TWITTER_PROFILE_MAPPING, 等。

该变量的值必须是字典,包含提供者侧的字段名称及其值必须是您的表单字段的名称。例如

TWITTER_PROFILE_MAPPING = { ‘username’: ‘screen_name’, }

在这里,您可以看到“screen_name”是您从Twitter请求的内容,在您的EXTRA_FORM中,您将在“username”键下看到这个值。这是因为每种认证方法都可以为它的数据提供不同的名称,您需要统一它们。

您也可以覆盖EXTRA_FORM本身,并将NETAUTH_EXTRA_FORM变量设置为自定义表单的路径。别忘了在这个表单中实现save方法。

Facebook

Twitter

  • 前往 http://twitter.com/apps/new 创建应用程序,应用程序类型:浏览器,回调URL:http://your_domain/auth/complete/

  • 在您的设置文件中设置TWITTER_CONSUMER_KEY和TWITTER_CONSUMER_SECRET

Yandex

Vkontakte

变更

如果您是从之前的scss版本升级的,请确保您已经阅读了以下文档

http://packages.python.org/django-netauth/changes.html

注意

您需要根据django文档中的描述设置messages框架

错误跟踪器

如果您有任何建议、错误报告或不满,请向https://github.com/klen/django-netauth/issues的issue tracker报告

贡献

django-netauth的开发在github上发生:https://github.com/klen/django-netauth

贡献者

许可

许可协议为GNU lesser general public license

项目详情


下载文件

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

源分布

django-netauth-0.1.94.tar.gz (42.4 kB 查看散列)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面