내 조직은 OpenAM SSO를 인증에 사용하고 내 앱은 Pyramid로 작성되었습니다. 사용자 ID는 HTTP 헤더로 전달됩니다. 또한 그룹 및 사용 권한을 전달하도록 구성 할 수도 있습니다. acl에서 사용할 수 있습니다. 이렇게하면 피라미드에서 인증이 중복됩니다. Authenticaion Policy (인증 정책)를 완전히 없애고 승인만으로 갈 수 있습니까?피라미드 : 인증없이 권한 부여를 사용할 수 있습니까?
1
A
답변
4
피라미드의 권한 부여 시스템에 그 사람이 누구인지 (그들의 효과적인 주체)를 알리는 방법이 필요합니다. 이것은 헤더를 파싱하는 것과 같은 간단한 작업이라 할지라도 인증 정책의 책임입니다.
class CustomAuthenticationPolicy(object):
def effective_principals(self, request):
principals = [Everyone]
identity = request.headers.get('x-identity')
# validate the identity somehow
if is_valid(identity):
principals += [Authenticated, identity, 'g:editors']
return principals
config.set_authentication_policy(CustomAuthenticationPolicy())
+0
귀하의 솔루션을 사용하여 문제를 해결할 수있었습니다. 처음에'CustomAuthenticationPolicy'는'unauthenticated_userid' 속성을 가지고 있지 않다고 불평했습니다. 그래서 나는이 메소드를 추가하여 사용자 아이디를 반환했다. @ michael-merickel에 감사드립니다. –
+1
예, 제 솔루션은 승인 권한을 얻기위한 것입니다. 'authenticated_userid' 또는'unauthenticated_userid'를 호출하는 다른 코드가 있다면 다른 메소드를 정의해야합니다. –
관련 문제
- 1. 권한 부여를 어떻게 수행합니까?
- 2. 인증없이 Google 검색 API를 사용할 수 있습니까?
- 3. HTTP 응답 헤더 권한 부여를 서버에서 관리 할 수 있습니까?
- 4. 런타임시 생성되는 객체에 대해 역할 기반 권한 부여를 위해 AzMan을 사용할 수 있습니까?
- 5. Breeze JS로 권한 부여를 처리하는 방법은 무엇입니까?
- 6. IBM MQ 7.0에서 권한 부여를 비활성화하는 방법
- 7. Oracle 데이터베이스에서 역할에 권한 부여를 부여하십시오.
- 8. 응용 프로그램에서 권한 부여를 처리하는 방법은 무엇입니까?
- 9. Asp.net WebAPI에서 권한 부여를 어디에서 플러그인해야합니까?
- 10. 런타임시 실행 수준 권한 부여를 어떻게 변경합니까?
- 11. Django 1.3에서 사용자 인증없이 Admin UI를 사용할 수 있습니까?
- 12. 피라미드 : 인증 정책없이 인증 정책을 사용할 수없는 이유는 무엇입니까?
- 13. 피라미드 - 파이썬의 특정 요소에 대한 사용 권한
- 14. 사용자 데이터베이스에 대한 권한 부여/인증을 사용할 수 있습니까?
- 15. 레일즈 사용자 인증/권한 부여를 MySQL 데이터베이스 서버 내의 기존 권한에 어떻게 묶을 수 있습니까?
- 16. 개찰판 권한 부여를 위해 지역 변수 주석을 어떻게 사용합니까?
- 17. 권한 부여는 다음 작업을 수행 할 수 있습니다 내 컨트롤러에 대한 권한 부여를 설정하려고
- 18. Asp.Net 4.0에서 인증 및 권한 부여를 구현하는 방법은 무엇입니까?
- 19. Laravel에서 색인 경로에 대한 권한 부여를 처리하는 방법
- 20. 클래스 수준에서 [Authorize] 속성을 정의한 경우 작업 중 하나에 대한 권한 부여를 건너 뛸 수 있습니까?
- 21. ASP.NET MVC 및 Identity 2.0에서 권한 부여를 캐시 할 수 있습니까?
- 22. MVC 컨트롤러에서 한 동작에 대한 권한 부여를 비활성화 할 수 있습니까?
- 23. 네트워크 드라이브에서 비디오 파일 권한 부여를 처리하는 방법
- 24. MVC 응용 프로그램의 저장소 계층에서 권한 부여를 수행하기위한 패턴
- 25. ASP.NET MVC2 액세스 제어 : 권한 부여를 동적으로 수행하는 방법?
- 26. 생산 시작 또는 종료 시점에 권한 부여를 추가 하시겠습니까?
- 27. Google의 GTMOAuth2Authentication 클라이언트가 오프라인 액세스 권한 부여를 지원합니까?
- 28. asp.net mvc3에서 역할 기반 권한 부여를 구현하는 방법
- 29. 여러 cakephp 응용 프로그램간에 권한 부여를 배포하는 방법은 무엇입니까?
- 30. Jersey를 Rest 클라이언트로 사용하여 권한 부여를 위해 Ambari를 연결하는 방법
사용자 이름을 헤더로 전달하는 것은 Athentication의 한 유형입니다. –