사이먼입니다. 그것은 사소한 일입니다. 양식을 읽으려는 제안을 건너 뛰더라도 여전히 사소한 것입니다. 귀하의 질문에 따라 단 하나의 문서를 검사하는 경우에도, 그것은 사소한 일입니다. 감사인은 때때로 이러한 유형의 정보를 원하지만 도미노의 보안 시스템은이를 염두에두고 설계되지 않았으며 정보를 얻는 데 필요한 기본 제공 API가 없습니다.
Java에서는 Document.getItems()
메서드를 사용하여 모든 항목의 벡터를 검색해야합니다. 그런 다음 항목을 살펴 봐야합니다.Item.READERS
또는 Item.AUTHORS
인지 확인하려면 Item.getType()
을 확인해야합니다. 그렇다면 값의 벡터를 검색하려면 Item.getValues()
을 수행해야하며 각 값이 역할인지 확인하려면 벡터 검사를 반복해야합니다. 역할 인 경우 Database.getACL()
을 사용하고 ACLEntries
을 반복하여 어떤 역할이 있는지와 사람 항목인지 그룹 항목인지 확인해야합니다. 그룹 항목 인 경우 Domino 디렉토리에서 그룹 구성원을 조회해야합니다. 따라서 중첩 된 그룹을 확장해야 할 수도 있습니다. 항목이 아닌 역할의 값은 Domino 디렉토리에 대해 해당 값을 확인하여 올바른 사람 또는 그룹인지 확인한 다음 최종적으로 People에 도달 할 때까지 그룹을 다시 확장해야합니다. Domino 디렉토리에서 조회 할 경우, 디렉토리 보조자를 구성 할 수 있다는 점에 대해 걱정할 필요가 있습니다. 어떤 경우에는 검사 할 여러 Domino 디렉토리 데이터베이스가있을 수 있지만 Notes/Domino 8을 사용할 수있는 경우 다소 쉽습니다. Directory
클래스는이를 처리합니다.
디자인 컬렉션을 읽지 않고 양식에 나열된 양식 필드가 문서에 표시되어 있거나 표시되어 있지 않을 수 있습니다. 그들은 양식에 등재 된 것과 동일한 유형 일 수도 그렇지 않을 수도 있습니다. 문서에 저장되는 것은 문서의 크기에 따라 달라집니다. 양식 자체의 액세스 제어는 사용자가 양식을 사용하여 문서를 표시하는 것을 차단할 수 있지만 프로그래밍 방식 액세스를 차단하지는 않습니다. 또한 문서에는 양식에 나열되지 않은 추가 판독기 또는 작성자 필드가 포함될 수 있습니다. –
글쎄, 그 양식에 아직 문서가 생성되지 않은 경우가있을 수 있지만 양식의 목록을 가지고 있지 않은 경우 (OP가 수행 할 계획이라면) 다른 곳에서 기능이 중단 될 수 있으므로 언급했습니다. –
아마 보안이나 컴플라이언스 감사 상황이라고 추측합니다. 사람들이 이러한 유형의 정보를 묻는 평상시의 이유라고 생각합니다. 그러나 나는 그것에 대해 잘못 될 수 있습니다. –