最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python django集成cas驗(yàn)證系統(tǒng)

 更新時(shí)間:2014年07月14日 11:55:47   投稿:hebedich  
cas是什么東西就不多說了,簡而言之就是單點(diǎn)登陸系統(tǒng),一處登陸,全網(wǎng)有權(quán)限的系統(tǒng)均可以訪問

加入cas的好處

cas是什么東西就不多說了,簡而言之就是單點(diǎn)登陸系統(tǒng),一處登陸,全網(wǎng)有權(quán)限的系統(tǒng)均可以訪問.

一次登陸,多個(gè)系統(tǒng)互通
cas一般均放置在內(nèi)網(wǎng),加入cas驗(yàn)證則必須要求用戶走vpn訪問,提高安全性;
cas可和域控等系統(tǒng)結(jié)合,密碼定時(shí)過期;
基本認(rèn)證統(tǒng)一走cas控制,減去開帳號等麻煩事;
django 如何使用cas驗(yàn)證

django 的好處就是支持的包多,網(wǎng)上已經(jīng)有大神做好的相關(guān)的app,直接下載、安裝就可以了。

我們要做的就是下載、解壓拷貝,略微配置下就可以跑了。

至于安裝也是非常簡單的,直接解壓之后python setup.py install 就可以了。

官方鏈接:

django-cas

django-cas 如何配置

配置方法

至于配置,熟悉django的同學(xué)也都明白,django 是安裝app來劃分的,可擴(kuò)展性非常強(qiáng)。

django-cas也是一個(gè)app,所以我們按照app的配置方法就配置就可以了。

* 在MIDDLEWARE_CLASSES 中添加CAS的配置: 
 
  'django_cas.middleware.CASMiddleware'
 
* 在AUTHENTICATION_BACKENDS 中添加CAS的配置:
 
  'django_cas.backends.CASBackend'
 
 注意在django1.6 中默認(rèn)是沒有AuthenticationMiddleware 的配置項(xiàng)的,需要手動(dòng)添加,
 并添加該行配置:
 
  'django.contrib.auth.backends.ModelBackend',
 
* 配置CAS_SERVER_URL: 該地址為cas驗(yàn)證服務(wù)器的地址,必須配置

 
完整配置如下

INSTALLED_APPS = (
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
)
 
MIDDLEWARE_CLASSES = (
  'django.contrib.sessions.middleware.SessionMiddleware',
  'django.middleware.common.CommonMiddleware',
  'django.middleware.csrf.CsrfViewMiddleware',
  'django.contrib.auth.middleware.AuthenticationMiddleware',
  'django.contrib.messages.middleware.MessageMiddleware',
  'django.middleware.clickjacking.XFrameOptionsMiddleware',
  'django_cas.middleware.CASMiddleware',
  'django.middleware.doc.XViewMiddleware',
)
 
AUTHENTICATION_BACKENDS = (
  'django.contrib.auth.backends.ModelBackend',
  'django_cas.backends.CASBackend',
)
 
CAS_SERVER_URL = 'http://cas.oxxs.letv.cn:6789/cas/login'

實(shí)例

settings.py配置文件

如上配置

views文件

# Create your views here.
from django.http import HttpResponse
 
def login(request):
  if request.user.is_authenticated():
    return HttpResponse('login in at port 9000')
  else:
    return HttpResponse('not login at port 9000')

沒啥可說的,只是簡單的檢測用戶是否登陸,然后打印以行字符串。

urls文件

from django.conf.urls import patterns, include, url
from django.contrib import admin
from report_system import views
 
admin.autodiscover()
 
urlpatterns = patterns('',
  # Examples:
  # url(r'^$', 'report_system.views.home', name='home'),
  # url(r'^blog/', include('blog.urls')),
 
  url(r'^$', views.login),
  url(r'^login/$', 'django_cas.views.login'),
  url(r'^logout/$', 'django_cas.views.logout'),
  url(r'^admin/', include(admin.site.urls)),
)

更沒有什么東西了,一看都懂的。

測試

我們先登陸下看看:

可以看的很明顯在訪問我們的服務(wù)器之后,由于未登陸,所以接著302跳轉(zhuǎn)到
cas服務(wù)器進(jìn)行校驗(yàn)。

這個(gè)圖是緊接著上一個(gè)圖的,在cas服務(wù)器校驗(yàn)之后,如果校驗(yàn)通過,則跳轉(zhuǎn)會我們的
服務(wù)器地址,這里似乎是默認(rèn)跳轉(zhuǎn)回到了/,而我們在/對應(yīng)的views里面打印了兩行
字符,看到確實(shí)打印了login in ,則表示我們的登陸是成功的!

注銷等其他也都類型,不再多說了。

總結(jié)

django_cas 總體的來說還是很方便的,可以非??焖俚膸臀医尤隿as驗(yàn)證系統(tǒng),但

目前的配置似乎還是有點(diǎn)問題的,注銷之后再次登陸是無法跳轉(zhuǎn)回我們的服務(wù)器地址的,

而是跳轉(zhuǎn)回了cas的地址。 有待繼續(xù)驗(yàn)證哈。

相關(guān)文章

  • 使用Python模塊進(jìn)行數(shù)據(jù)處理的詳細(xì)步驟

    使用Python模塊進(jìn)行數(shù)據(jù)處理的詳細(xì)步驟

    Python 提供了豐富的模塊和庫,用于處理各種類型的數(shù)據(jù),本文介紹了一些常用的模塊和庫,以及如何使用它們進(jìn)行數(shù)據(jù)處理的詳細(xì)步驟和代碼示例,對我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2025-02-02
  • python中字典dict常用操作方法實(shí)例總結(jié)

    python中字典dict常用操作方法實(shí)例總結(jié)

    這篇文章主要介紹了python中字典dict常用操作方法,實(shí)例總結(jié)了Python針對字典操作的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 老生常談Python序列化和反序列化

    老生常談Python序列化和反序列化

    下面小編就為大家?guī)硪黄仙U凱ython序列化和反序列化。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • python 中文字符串的處理實(shí)現(xiàn)代碼

    python 中文字符串的處理實(shí)現(xiàn)代碼

    python中直接將一個(gè)中文字符串賦值給一個(gè)變量使用的是utf-8格式的編碼,以下為證.
    2009-10-10
  • python SQLAlchemy 中的Engine詳解

    python SQLAlchemy 中的Engine詳解

    這篇文章主要介紹了python SQLAlchemy 中的Engine詳解,Engine 翻譯過來就是引擎的意思,汽車通過引擎來驅(qū)動(dòng),而 SQLAlchemy 是通過 Engine 來驅(qū)動(dòng),Engine 維護(hù)了一個(gè)連接池(Pool)對象和方言(Dialect),需要的朋友可以參考下
    2019-07-07
  • Python連接phoenix的方法示例

    Python連接phoenix的方法示例

    這篇文章主要介紹了Python連接phoenix的方法,簡單說明了phoenix的概念、功能并結(jié)合具體實(shí)例形式分析了Python連接phoenix的相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • python socket網(wǎng)絡(luò)編程步驟詳解(socket套接字使用)

    python socket網(wǎng)絡(luò)編程步驟詳解(socket套接字使用)

    這篇文章主要介紹了什么是套接字、PYTHON套接字模塊,提供一個(gè)簡單的python socket編程,大家參考使用
    2013-12-12
  • Numpy 數(shù)組操作之元素添加、刪除和修改的實(shí)現(xiàn)

    Numpy 數(shù)組操作之元素添加、刪除和修改的實(shí)現(xiàn)

    本文主要介紹了Numpy 數(shù)組操作之元素添加、刪除和修改的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Sentry的安裝、配置、使用教程(Sentry日志手機(jī)系統(tǒng))

    Sentry的安裝、配置、使用教程(Sentry日志手機(jī)系統(tǒng))

    Sentry?是一個(gè)實(shí)時(shí)事件日志記錄和聚合平臺,由于ExceptionLess官方提供的客戶端只有.Net/.NetCore平臺和js的,本文繼續(xù)介紹另一個(gè)日志收集系統(tǒng)Sentry,感興趣的朋友一起看看吧
    2022-07-07
  • django rest framework 實(shí)現(xiàn)用戶登錄認(rèn)證詳解

    django rest framework 實(shí)現(xiàn)用戶登錄認(rèn)證詳解

    這篇文章主要介紹了django rest framework 實(shí)現(xiàn)用戶登錄認(rèn)證詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07

最新評論

蒲江县| 海丰县| 沭阳县| 三门峡市| 罗江县| 鹿邑县| 昆山市| 额敏县| 阿克| 凤山市| 遂宁市| 连平县| 延长县| 浙江省| 宜兴市| 拉孜县| 怀集县| 丰县| 鲁甸县| 安乡县| 大洼县| 贺州市| 辰溪县| 邢台市| 万全县| 建始县| 普陀区| 白玉县| 诸暨市| 离岛区| 泸州市| 班戈县| 中牟县| 瑞安市| 东乌珠穆沁旗| 彭阳县| 广水市| 安福县| 峡江县| 林周县| 金秀|