피라미드는 훨씬 유연한 인증 시스템을 갖추고 있습니다. 그리고 네, Django의 사용자/그룹/사용 권한 개념과 같은 간단한 것을 원하면 유연하지 않을 수 있습니다.
데이터를 저장하는 방법이나 사용하는 ORM에 대한 가정이 없으므로 Pyramid에는 "사용자"개체가 없으므로 contrib.auth와 같은 사용자가 없습니다. PYPI에서 찾을 수있는 cryptacular 또는 passlib과 같은 라이브러리를 사용하여 암호를 직접 해시/염화해야합니다.
피라미드의 시스템 내에서 사용자/그룹/권한을 원하는만큼 그룹을 사용 권한에 매핑하는 __acl__
이있는 RootFactory를 정의하면 매우 간단합니다. 권한은보기에 할당되므로 대개 꽤 정적입니다. 그룹 (Pyramid가 "주체"라고 부르는 것)을 동적으로 구현할 수도 있습니다.
나는뿐만 아니라 shootout demo로, 피라미드 wiki2 tutorial 보는 게 좋을 것.
은 SQLAlchemy의를 사용하려는 경우 피라미드 내에서 허가와 지원을 위해도 몇 타사 패키지가 있습니다. apex은 더 완전한 스택 솔루션이고 ziggurat_foundations은 SQLAlchemy보다 낮은 수준의 계층이므로 응용 프로그램에 대한 사용자 및 그룹을 설정하는 데 도움이됩니다.
귀하의 질문은 상당히 까다로 우며 권한 부여는 "어려운 문제"이므로 여기에서 그만두고 피라미드 자습서에서부터 여러 가지 타사 예제에 이르기까지 이미 존재하는 자습서와 리소스를 되풀이하지 않도록하십시오. 특별한 질문이 있으시면 다른 질문에 자유롭게 질문하십시오.
감사합니다. 좋은 정보입니다. 내가 장고의 구현 (그리고 repsonse도 함께)에서 보았을수록,이 질문은 SQLAlchemy에 묶여 있어야하는 'User'관련 객체가 있기 때문에 SQLAlchemy 질문에 더 많은 것을 알게되었다. – lostdorje
총격전 데모 포인터를 가져 주셔서 감사합니다. 전체 사용자 및 그룹 모델 및 전체 테스트 세트로 작성되었습니다. –
고급 사용자를 위해 모든 것을 (또는 부분적으로) 날려 버리고 대체 할 수있을지라도 인증 측면에서 더 많은 사전 제작 된 것이 있다면 좋을 것입니다. 사용자 정의 솔루션을 위해 주변에서 구현해야하는 작업을 문서화하는 한 스토리지 시스템을 사용하지 않고 사용자 개념을 가질 수 있습니다. –