우리는 Openstack 클라우드 사용자 중 하나이며 클라우드에 많은 파일을 저장하기 위해 Swift를 사용합니다. 사용자 (최종 사용자)가이 파일에 액세스합니다. 파일이 공용 인 경우 최종 사용자는 웹 또는 모바일 응용 프로그램에서 개체 URL을 직접 방문 할 수 있습니다. 그러나 일부 파일은 비공개 파일입니다. 각 최종 사용자는 자신의 개인 파일에만 액세스 할 수 있습니다. 최종 사용자는 항상 우리의 서버로 요청을 보내는Openstack Swift에서 사용자가 파일에 액세스 할 수있는 가장 좋은 방법은 무엇입니까?
A. :
최종 사용자는 자신의 개인 파일에 액세스하는 두 가지 방법이있을 수 있습니다. 그리고 우리 서버는 Swift에서 파일을 가져 와서 사용자에게 보냅니다. 이 방법에서 우리 서버는 파일 프록시로 간주 될 수 있습니다. Openstack의 인증은 이며 사용자는 Google 서버의 인증을 받았습니다. 우리는 우리 자신의 사용자 시스템을 유지해야합니다.
이 방법의 한 가지 문제점은 확장 성입니다. 각 요청이 Google 서버로 전송되므로 많은 파일이 동시에 업로드되거나 다운로드되는 경우 병목 현상이 서버에 발생합니다. 서버가 충분하지 않은 경우 스위프트의 확장 기능을 사용할 수 없습니다. 실제로 우리는 파일 전송을 제외하고는 많은 서버가 필요하지 않습니다.
B. 최종 사용자는 Swift로 요청을 직접 보냅니다. 거대한 파일 대역폭 문제를 해결할 수 있습니다. 하지만 Openstack의 인증 방법은 이어야합니다. 따라서 우리는 Openstack의 사용자 중 하나 일 뿐이며 사용자를 위해 수천 개의 Openstack 계정을 필요로합니다! 그것은 이상하고 실현 가능하지 않은 것 같습니다.
요구 사항을 충족시키는 다른 방법이 있습니까?
당신은 그들의 스위프트에 정의 된 리셀러 관리자 단일 사용자 이름/암호로 모든 사용자와 B 옵션을 인증 사용할 수 있습니다 auth 시스템에서는 다른 사용자에 대해 다른 빠른 계정을 만들 수 있지만 동일한 토큰을 사용하여 액세스 할 수 있습니다. – koolhead17
그러면 사용자 A가 사용자 B의 파일에 액세스하지 못하게하는 방법은 무엇입니까? 감사! – flypen