직원이 파일을 업로드 할 수있는 시스템이 있습니다. 공공 개인 또는 보호 모드에서 내 계정에 세 가지 방법웹을 통한 파일 보안 : Fine Grained 권한 기반 파일 액세스
업로드, 공공 개인 또는 보호 모드에서 부서 계정에
업로드가있다
, 공공 개인 또는 보호 모드에서 조직 계정에 업로드
곳 공개는 그룹 또는 개인에게만 공개되고 조직의 모든 사람에게 보호되는 모든 사람에게 공개됩니다. 조직의
모든 파일이 말하는 디렉토리에 저장되어,/파일/<organizationId>/파일 서버에
같은파일
+ - 234809
| + img1.jpg
| + doc1.pdf
+ - 808234
| + doc2.pdf
DB에 파일 경로 및 개인 정보 보호 수준을 저장하려고합니다. 따라서 특정 페이지의 사용자에게 파일 URL에 대한 링크를 표시할지 여부를 제어 할 수 있습니다.
문제는 파일의 URL을 제어 할 수 없다는 것입니다. 브라우저의 주소 표시 줄에 img1.jpg의 URL을 입력하면 로그인 한 사용자가 있는지 여부를 알 수 없습니다. img1.jpg를 볼 수있는 자격이 있습니다.
의견이 있으십니까?
Java 응용 프로그램입니다. 그러나 파일 서버로 작동하는 Glassfish의 별도 인스턴스가 있습니다. 앱이 아직 출시되지 않았으므로 더 나은 파일 액세스 전략을 채택 할 수 있습니다.
파일에 액세스하는 사용자가 로그인되어 있거나 로그인되지 않았을 수 있습니다.하지만 액세스중인 파일이 비공개 또는 공유 인 경우 로그인 페이지로 리디렉션하여 사용자를 인증 할 수 있습니다.
감사
Nishant
네, 이것은 깔끔합니다. 이 접근법에서 URL은 파일의 컨텍스트를 가질 것입니다. http://abc.com/downloads/[some-encrypted-key]/img1.jpg와 같이 HTTP 처리기는 사용자 자격 증명 및 키의 필수 권한을 기반으로 액세스 가능성을 추론합니다. 그러나 로봇은 여전히 낮은 확률로 시도하고 계속 액세스 할 수 있습니다. 최근 내가 생각한 것은, img1.jpg와 같이 각 파일에 메타 데이터 파일을 첨부 할 수 있습니다. img1.md 파일이 있는데, 사용자가 파일에 액세스하면 Handler가 메타 데이터를 읽고 확인합니다. 그러나 파일 w/100 파일을 읽는 것은 고통 스러울 수 있습니다. – Nishant
@Nishant - 사용중인 플랫폼과 '다운로드'에 액세스 할 사용자가 로그인으로 인증되고 거기에서 갈 수 있는지 질문에 명확히하십시오. –
Java 응용 프로그램입니다. 그러나 파일 서버로 작동하는 Glassfish의 별도 인스턴스가 있습니다. 앱이 아직 출시되지 않았으므로 더 나은 파일 액세스 전략을 채택 할 수 있습니다. 파일에 액세스하는 사용자가 로그인 한 상태 일 수도 있고 로그인하지 않은 상태 일 수도 있습니다.하지만 액세스중인 파일이 비공개 또는 공유 인 경우 로그인 페이지로 리디렉션하여 사용자를 인증 할 수 있습니다. – Nishant