2016-11-24 1 views
0

Azure에서 Linux 가상 머신을 만들고 동일한 가입 및 동일한 리소스 그룹에서 Blob 스토리지 계정을 만들었습니다.Azure 스토리지 계정 SAS 및 Azure 가상 머신

공유 액세스 서명을 사용하여 가상 컴퓨터에서 저장소 계정에 액세스하려고합니다.

가상 컴퓨터의 공용 IP를 사용하여 SAS URL을 생성하고 Java 응용 프로그램에서 저장소 계정에 액세스하려고 시도했는데 지정된 IP가 허가 된 IP 범위에 있지 않음을 알리는 오류가 있습니다.

다른 구독을 시도하고 같은 결과를 얻었습니다.

컬을 사용해 보았는데 항상 같은 오류가 발생했습니다.

오류 : 사용자가 제공 한 오류 메시지에 따르면

<?xml version="1.0" encoding="utf-8"?> 
<Error> 
<Code>AuthorizationSourceIPMismatch</Code> 
<Message> 
This request is not authorized to perform this operation using this source IP 100.**.**.**. 
RequestId:*********-****-****-****-*********** 
Time:2016-11-24T09:58:57.9211184Z 
</Message> 
<SourceIP>100.**.**.**</SourceIP> 
</Error> 

답변

0

, 난 당신이 SAS 토큰을 생성 할 때, 당신은 선택적 매개 변수 IP를 구성 할 수 있다고 가정한다.

IP를 : 공식 tutorial에서 언급 한 바와 같이

. 요청을 수락 할 Azure 외부의 IP 주소 또는 IP 주소 범위를 지정하는 선택적 매개 변수입니다 (Express Route의 라우팅 세션 구성 상태 섹션 참조).

SAS URL을 확인하고 sip 매개 변수를 구성했는지 확인하십시오. 선택적 IP 매개 변수를 제거하거나 특정 IP를 포함시키고 SAS 토큰을 재생성하려고 할 수 있습니다.

+0

예 보안을 위해 필요하기 때문에 IP를 구성했습니다. 그래서 필자는 Azure Virtual Machine의 공개 IP를 40.114. *. *로 시작했습니다. 그래서 서버에 대한 액세스가 작동해야합니다. Azure 저장소 오류로 인해 IP에 액세스하려고 시도하는 IP가 100 *. *. *로 시작한다고 나와 있는데 그 이유는 내가 이해하지 못하는 것입니다. – Romainhm

+0

웹 응용 프로그램을 VM에 배포하려고 시도했는데 Azure 저장소에 액세스 할 수있었습니다. 내 VM의 공개 IP가 포함 된 SAS URL을 사용하여 웹 앱 백엔드에서 IP '100. *. *. *'을 확인하고 그 출처를 찾으십시오. –

+0

분명히 그것은 Azure SNAT에서 비롯된 것입니다. 나는 Azure의 지원을 요청하고 그들은 무슨 일이 일어나고 있는지 보려고합니다. – Romainhm