2009-11-15 2 views
0

내 사이트에 대해 매우 간단한 CMS를 만들고 싶습니다. 그래서 내가 생각하는 것은 사용자가 로그인하고 페이지 목록이 표시된다는 것입니다. 이제 그들은 끝을 바꾸고 그것을 구하십시오. 내 C# 코드는 파일/섹션을 덮어 쓰게됩니다.IIS7에서 문서 파일 읽기 및 쓰기를위한 사용자 권한 설정

그래서이 작업을 수행하는 것이 좋지 않을 것이라고 생각하지만, 읽기 및 쓰기 전제와 함께 작동하는 방법과 설정 방법에 대해서는 잘 모릅니다.

마찬가지로 사용자는 자신이 소유 한 파일 만 읽고 쓸 수 있어야합니다. 사용자 A가 Page1.html 및 Page2.html을 가지고

그렇다면 그들은 단지 그 파일을 읽고 그들이 사용자 B의 page3.html 등을 만질 수있는 그 파일에 기록 할 수 Page4.html

어떻게 것 I 설정이를 ?

감사합니다.

답변

1

파일 목록을 만들 때 데이터베이스 저장소에서 해당 목록을 읽게됩니다. 사용자가 허가 한 레코드 만 허용하는 코드 조건에 포함하십시오.

이렇게하는 가장 간단한 방법은 UserID와 DocumentID라는 두 개의 열이있는 테이블을 만드는 것입니다. 테이블에 레코드가 있으면 사용자가 특정 문서에 대한 권한을 가지고 있음을 나타냅니다. 이 테이블에 적절한 문서에 대한 사용자 권한을 부여하는 레코드를 추가하십시오.

그런 다음 데이터베이스에서 문서를 읽을 때 DocumentID를 통해이 테이블을 문서 테이블에 조인하고 UserID별로 테이블을 필터링 할 수 있습니다. 사용자가 허가 한 레코드 만 반환됩니다. 그런 다음 해당 레코드 집합을 사용자에게 표시하는 문서 목록의 기초로 사용할 수 있습니다.

+0

사용자가 말 또는 해킹 된 포스트 백을 통해 다른 사용자의 파일을 '읽기/편집'하려고하면 사용자와 요청 된 파일/문서를 항상 확인하여 코드에서 액세스를 명시 적으로 거부해야합니다. –

0

SharePoint 방식으로 CMS를 사용할 수 있습니다. 네트워크의 기본 파일로 시작합니다. 변경이 이루어지면 페이지가 데이터베이스에 저장됩니다. 후속 변경은 db 변경이며 응용 프로그램은 해당 페이지에 대한 테이블의 마지막 항목을 렌더링합니다.

두 가지가 있습니다. 먼저 수정 내용을 확인하고 수정하십시오. 변경 사항을 누가 언제 작성했는지 페이지의 전체 내역을 볼 수 있습니다.

또한 데이터베이스 내의 페이지를 잠그고 페이지에 대해 역할/사용자를 지정할 수 있습니다. 권한을 검사하고 페이지를 렌더링하거나 액세스가 거부 된 페이지를 표시 한 다음 시도한 액세스를 페이지에 기록하는 제어기에 장식을 적용 할 수 있습니다.

나는이 소리가 복잡하다는 것을 알고 있지만 클라이언트가 더 많은 것을 원할 것이라는 점을 CMS를 가지고 살아 왔을 때를 미리 예측할 수 있습니까? 당신은 필요에 적응할 수있는 솔루션을 구현해야합니다.

쓰기 가치가 있다면 잘 쓸 가치가 있습니다.