보통 일반적인 게시판에서는 올린 글에 대해서는 누구든지 보게 된다.
또한 특정 글의 수정 작업은 자신이 작성한 항목에 대해서만 수행할 수 있게 된다.

그런데, 혹시 아래와 같은 기능이 필요할 수 있다.
1. 하나의 게시판을 여러사람이서 공유하지만, 마치 자신만의 글만 보이도록 하고 싶다.
2. 어떠한 글이든, 권한만 있으면 편집이 가능하다.
3. 모든 사용자가 아이템 자체를 편집 못하게 한다. ( 마감 처리 )

사실 1번과 같은 사항은 대개 View를 수정해서 자신이 작성한 글만 보이게 처리할 수 있다.
하지만, 만일 View를 바꿔 보게 되면 전체가 다 보이므로 1번의 조건에 합당하게 처리되지 않는다.  2번 같은 경우에는 글이나 문서가 공유되는 것이라서 팀 사이트 의 경우 팀 구성원이 원하는데로 수정가능한 경우를 의미한다.
3번의 경우는 해당 게시판의 만료적인 의미로 두면 되며, 더 이상 누구도

이 처리를 위한 방법은 SPList의 속성 중 아래의 2개의 프로퍼티가 이런 기능을 제공하게 된다.

int SPList.ReadSecurity

 속성 내에 넣는 값
 1 - 모든 사용자가 모든 아이템을 읽을 수 있다.
 2 - 자신이 생성한 아이템에 대해서만 읽을 수 있다.

int SPList.WriteSecurity

 속성 내에 넣는 값
 1 - 모든 사용자가 모든 아이템을 권한만 있으면 편집 가능하다.
 2 - 사용자가 생성한 아이템만 편집 가능하다.
 4 - 누구도 아이템에 대해 편집이 불가능하다. ( 사이트 관리자만 가능 )


위의 속성만 세팅하게 되면, 각각의 기능을 수행할 수 있게 된다.

기본 값으로 ReadSecuriry는 1이, WriteSecuriy는 1로 설정되어 있다.

만일 위의 3가지 요구사항중 1번을 처리하려면,
ReadSecurity를 1, WriteSecurty는 1또는 3을 넣으면 된다.

2번을 처리하려면,
ReadSecurity를 1, WriteSecurty는 1로 넣으면 된다.

3번을 처리하려면,
ReadSecurty를 1, WriteSecurty를 4로 넣으면 된다.

728x90

+ Recent posts