SQL 데이터베이스를 백업하고 클라우드 저장소에 저장하는 백업 서비스를 작성 중입니다. 실제로 이미 Amazon S3가 구현되었지만 애플리케이션이 고객에게 배포되므로 API 키를 애플리케이션에 저장할 수 없습니다. 키를 제공하기 위해 웹 서비스를 사용하는 것이 고려되었지만 (키가 도난 당할 가능성을 여전히 남아 있기 때문에) 현재로서는 최선의 선택이 아닙니다.Azure 공유 액세스 서명을 사용하면 누구나 내 BLOB에 액세스 할 수 있습니까?
그래서 BLOB 서비스 및 톱 Windows Azure를 조사하고있었습니다. 클라우드의 리소스에 대한 액세스를 제공하는 데 사용할 수있는 이러한 공유 액세스 서명이 있습니다. 서명을 사용하여 클라우드에 방울을 넣을 수도 있습니다. 그러나 MSDN docs을 통해 읽는다면, 나는 이것이 안전하지 않은 시스템이라고 생각할 수 밖에 없습니다. 1. 내 계정의 컨테이너 이름과 정확한 이름을 알고있는 사람 2. 서명을 구성하는 방법은 개체에 액세스 할 수 있습니다. 이 서명을 사용할 때 비밀 키가 필요하지 않습니다. 적어도 그것은 문서를 읽는 나의 인상입니다.
마침내 내 질문에. Azure에서 공유 액세스 서명을 평가 한 결과가 맞는지, 그렇지 않은 이유는 무엇입니까? 그리고 누구든지 내가 성취하려는 일을하는 대체 방법을 제안 할 수 있습니까?
이제 키로 암호화하여 서명 해시를 계산해야합니다. 그래서 그것은 나의 첫 번째 질문에 답한다 (나는 처음 평가에서 틀렸다). Azure를 사용하면 무제한의 컨테이너를 만들 수 있으므로 고객 당 컨테이너를 갖게됩니다. 고객이 내 웹 서비스에 전화를 걸면 고객에게 고유 한 서명이 생성됩니다. 이 방법으로 모든 암호화 키, 컨테이너 이름 등을 클라이언트 시스템이 아닌 내 서버에서 보호 할 수 있습니다. – BrianB