zope.authentication

Phần mềm chụp màn hình:
zope.authentication
Các chi tiết về phần mềm:
Phiên bản: 4.0.0
Ngày tải lên: 20 Feb 15
Giấy phép: Miễn phí
Phổ biến: 5

Rating: nan/5 (Total Votes: 0)

zope.authentication cung cấp một định nghĩa của khái niệm xác thực để sử dụng trong Zope Framework.
Tài liệu chi tiết
Hỗ trợ Đăng xuất
Hỗ trợ đăng xuất được xác định bởi một giao diện đơn giản ILogout:
& Nbsp; >>> từ zope.authentication.interfaces nhập ILogout
rằng có một phương pháp "logout" duy nhất.
Việc sử dụng hiện tại của ILogout là để thích ứng với một thành phần IAuthentication để ILogout Để minh họa, chúng tôi sẽ tạo ra một thực hiện đăng xuất đơn giản mà thích nghi IAuthentication:
& Nbsp; >>>adapter (IAuthentication)
& Nbsp; ...implementer (ILogout)
& Nbsp; ... lớp SimpleLogout (object):
& Nbsp; ...
& Nbsp; ... def __init __ (self, auth):
& Nbsp; vượt qua ...
& Nbsp; ...
& Nbsp; ... def logout (self, theo yêu cầu):
& Nbsp; ... print 'tài khoản đã đăng xuất khỏi'
& Nbsp; >>> provideAdapter (SimpleLogout)
và một cái gì đó để đại diện cho một tiện ích xác thực:
& Nbsp; >>>implementer (IAuthentication)
& Nbsp; ... lớp Authentication (đối tượng):
& Nbsp; vượt qua ...
& Nbsp; >>> auth = Authentication ()
Để thực hiện một logout, chúng ta thích nghi auth để ILogout và gọi "logout":
& Nbsp; >>> logout = ILogout (auth)
& Nbsp; >>> logout.logout (TestRequest ())
& Nbsp; tài khoản đã đăng xuất
Adapter 'NoLogout'
Lớp:
& Nbsp; >>> từ zope.authentication.logout nhập NoLogout
có thể được đăng ký như là một nhà cung cấp dự phòng của ILogout cho các thành phần IAuthentication mà không phải là nếu không thích nghi với ILogout. Phương pháp logout NoLogout là một không-op:
& Nbsp; >>> NoLogout (auth) .logout (TestRequest ())
Thoát Giao diện người dùng
Bởi vì một số giao thức xác thực không chính thức hỗ trợ đăng xuất, nó có thể không được có thể cho một người sử dụng đăng xuất khi họ đã đăng nhập. Trong trường hợp như vậy, nó sẽ không phù hợp để trình bày một giao diện người dùng để đăng nhập ra.
Do sự hỗ trợ logout là trang web cấu hình, Zope cung cấp một bộ chuyển đổi đó, khi đăng ký, chỉ ra rằng các trang web được cấu hình cho logout:
& Nbsp; >>> từ nhập khẩu zope.authentication.logout LogoutSupported
Lớp này chỉ đơn thuần phục vụ như là một lá cờ khi nó thực hiện ILogoutSupported:
& Nbsp; >>> từ zope.authentication.interfaces nhập ILogoutSupported
& Nbsp; >>> ILogoutSupported.implementedBy (LogoutSupported)
& Nbsp; Đúng
& Nbsp; >>> yêu cầu đối tượng = ()
& Nbsp; >>> ILogoutSupported.providedBy (LogoutSupported (yêu cầu))
& Nbsp; Đúng
Điều khoản chính
Điều khoản chủ yếu được sử dụng để hỗ trợ giao diện trình duyệt để tìm kiếm nguồn gốc. Họ cung cấp quyền truy cập vào thẻ và các chức danh cho các giá trị. Các điều khoản chính xem sử dụng một tiện ích xác thực để có được danh hiệu chính. Hãy tạo ra một tiện ích xác thực để chứng minh cách làm việc này:
& Nbsp; >>> class chính:
& Nbsp; ... def __init __ (self, id, title):
& Nbsp; ... self.id, self.title = id, title
& Nbsp; >>> từ zope.interface nhập người thực hiện
& Nbsp; >>> từ zope.authentication.interfaces nhập IAuthentication
& Nbsp; >>> từ zope.authentication.interfaces nhập PrincipalLookupError
& Nbsp; >>>implementer (IAuthentication)
& Nbsp; ... lớp AuthUtility:
& Nbsp; ... data = {'jim': 'Jim Fulton', 'stephan': 'Stephan Richter'}
& Nbsp; ...
& Nbsp; ... def getPrincipal (self, id):
& Nbsp; ... title = self.data.get (id)
& Nbsp; ... nếu tiêu đề không phải là None:
& Nbsp; ... trở lại chính (id, title)
& Nbsp; ... tăng PrincipalLookupError
Bây giờ chúng ta cần phải cài đặt các tiện ích xác thực:
& Nbsp; >>> từ zope.component provideUtility nhập khẩu
& Nbsp; >>> provideUtility (AuthUtility (), IAuthentication)
Chúng ta cần một nguồn chủ yếu để chúng ta có thể tạo ra một cái nhìn từ nó.
& Nbsp; >>> từ zope.component getUtility nhập khẩu
& Nbsp; >>> class PrincipalSource:
& Nbsp; ... def __contains __ (self, id):
& Nbsp; ... auth = getUtility (IAuthentication)
& Nbsp; ... thử:
& Nbsp; ... auth.getPrincipal (id)
& Nbsp; ... trừ PrincipalLookupError:
& Nbsp; ... return False
& Nbsp; ... khác:
& Nbsp; ... trở Đúng
Bây giờ chúng ta có thể tạo ra một cái nhìn từ ngữ:
& Nbsp; >>> từ PrincipalTerms nhập zope.authentication.principal
& Nbsp; >>> terms = PrincipalTerms (PrincipalSource (), None)
Bây giờ chúng tôi có thể yêu cầu các điều khoản xem với các điều kiện:
& Nbsp; >>> hạn = terms.getTerm ('stephan')
& Nbsp; >>> term.title
& Nbsp; 'Stephan Richter'
& Nbsp; >>> term.token
& Nbsp; 'c3RlcGhhbg__'
Nếu chúng tôi yêu cầu cho một thuật ngữ không tồn tại, chúng tôi nhận được một lỗi tra cứu:
& Nbsp; >>> terms.getTerm ('bob')
& Nbsp; Traceback (cuộc gọi gần đây nhất cuối cùng):
& Nbsp; ...
& Nbsp; LookupError: bob
Nếu chúng ta có một dấu hiệu, chúng ta có thể nhận được id chính cho nó.
& Nbsp; >>> terms.getValue ('c3RlcGhhbg__')
& Nbsp; 'stephan'

là gì mới trong phiên bản này:

  • Broke không phù hợp kiểm tra sự phụ thuộc vào zope.component.nextutility.
  • (Forward-tương thích với zope.component 4.0.0).
  • Thay thế phản zope.component.adapts sử dụng tương đương với zope.component.adapter trang trí.
  • Thay thế phản zope.interface.implements sử dụng tương đương với zope.interface.implementer trang trí.
  • Dropped hỗ trợ cho Python 2.4 và 2.5.

Yêu cầu :

  • Python

Phần mềm khác của nhà phát triển Zope Corporation and Contributors

zope.security
zope.security

12 May 15

zope.app.http
zope.app.http

11 May 15

zope.configuration
zope.configuration

14 Apr 15

zope.browsermenu
zope.browsermenu

20 Feb 15

Ý kiến ​​để zope.authentication

Bình luận không
Nhập bình luận
Bật hình ảnh!