2014-04-14 3 views
1

올리지 : https://orchard.codeplex.com/discussions/542161오차드 CMS에서 각 컨텐트 항목 보안

난 당신이 사용자 역할을 통해/보안 콘텐츠 형식을 잠글 수 있다는 것을 이해하지만, 내가 대신 각 컨텐트 항목을 확보 할 수있는 옵션을 제공하고 싶습니다.

내 접근 방식은 부울 값 (이상적으로 Editor/Admin의 확인란)이있는 사용자 정의 파트 (SecureContentPart라고 부름)를 만드는 것입니다. 나는 scure에 옵션을 제공하고자하는 유형에 파트를 첨부 할 것이다. 파트의 드라이버에서 부울 값과 사용자가 인증되었는지 확인합니다. 사용자가 인증되지 않았고 (익명) 부울이 참 (항목이 잠긴 경우) 인 경우 OrchardSecurityException을 던져서 기본적으로 로그인/인증되지 않은 페이지로 라우팅합니다.

몇 가지 질문 : 첫째

  1. 이 적절한 방법인가?
  2. RequestContext.HttpContext.User.Identity.IsAuthenticated 현재 사용자가 인증되었는지 확인하는 가장 좋은 방법은 무엇입니까?
  3. 인증 모듈에서 사용자 정의 파트를 정의하는 경우 해당 파트를 연결하는 동안 컨텐트 유형의 각 모듈 (이벤트 모듈의 이벤트 CT)에서 어떤 부분이 먼저 실행되는지 어떻게 알 수 있습니까? (즉, 파트가 별도의 모듈에있는 경우 파트가 정의되기 전에 파트가 첨부 될 수 있습니다.) auth 모듈의 모든 컨텐츠 유형에 파트 첨부를 정의하는 것이 더 적합합니까? (가능한 한 분리 된 것으로 만들고 싶다)

고마워!

답변

2

개별 콘텐츠 항목을 보호하는 기능이 이미 Orchard에 있습니다. Content Item Permissions이라고합니다.

+0

빠른 답변에 감사드립니다! 모듈을 활성화하는 것 외에도 우리는 보안을 설정하려는 각 컨텐츠 유형에 ContentPermissionsPart를 첨부 할 필요가 있습니까? – AnimaSola

+0

에디터 뷰는 컨텐트 편집자들에게는 조금 복잡해 보입니다. 일부 시나리오에서는 역할 세분성을 이해하지만, 제 경우에는 인증되지 않은 사용자의 컨텐트 항목을 잠그는 확인란을 사용하는 것이 가장 이상적입니다. 각 유형에 부품을 부착 할 때 틱된 값의 기본값을 설정할 수 있습니까? 이렇게하면 사용자는 "컨텐트 항목 액세스 제어 사용"필드를 선택하고 추가 사용자 정의가 필요하지 않으면 밑의 확인란을 무시하면됩니다. – AnimaSola

+0

또한, 페이지 내 프로젝션 위젯에 표시되는 컨텐츠 유형 (이 경우 이벤트)에 파트를 첨부하려고했습니다. 페이지는 익명 액세스를 허용하지만 이벤트 항목은 그렇지 않지만 페이지를 렌더링합니다. 프로젝션 내의 이벤트 항목이 익명 액세스를 허용하지 않기 때문에 렌더링 할 수 있습니까? – AnimaSola