2013-09-27 6 views
4

나는 Azure REST List Subscription Operation로 전화를 걸고 있습니다.금지 구독 작업 : 403 금지됨

내 컴퓨터에서 Current User \ Personal에 인증서를 설치했습니다. 성공적으로 API를 호출하고 응답을 되돌릴 수 있습니다. 응답 코드 = 200

테스트 상자에서 현재 사용 \ Personal에 동일한 인증서를 설치했습니다. API를 호출 할 수 없습니다. 나는 금지 된 403을 얻는다. 아래 전체 오류 : 그래서 나는 그것이 유효 추정 1월 2040에 (이 오늘 가져온로) 유효한 I 인증서를 확인 그래서

<Error> 
    <Code>AuthenticationFailed</Code> 
    <Message>The server failed to authenticate the request. 
    Verify that the certificate is valid and is associated with this subscription. 
    </Message> 
</Error> 

, 그것은 이전 오늘부터 유효합니까?

질문 : 시험 상자에

  1. 동일한 코드/프로젝트/서비스 내 로컬 컴퓨터에서 작동하지만. 왜?
  2. 인증서 손도장이 동일하고 인증서가 동일합니다. 로컬에서 작동하므로 인증서가 구독 azure 계정과 연결되어 있습니다! 왜?
  3. 확인할 사항은 무엇입니까? 로컬 및 테스트 박스 서비스 모두 인증서를 웹 요청에 첨부한다는 것을 알고 있습니다. (자세한 로깅을 통해이 사실을 알고 있습니다) 그러나 시점은

    입니다.

    HttpWebResponse webResponse = webRequest.GetResponse() as HttpWebResponse;

403 금지 된 오류가 표시됩니다.

이 글에 대해 생각하고 있습니다.

업데이트 : 피들러에서 볼 응답에서

는 응답의 시작은 다음과 같습니다

HTTP/1.1 403 Forbidden 
Content-Length: 294 
Content-Type: application/xml; charset=utf-8 
Server: Microsoft-HTTPAPI/2.0 
Date: Fri, 27 Sep 2013 02:49:59 GMT 

가 지금은 날짜 부분이 문제인지 궁금. 나는 날짜가 요청의 15 분 이내에 있어야한다는 것을 읽었던 것을 기억한다. 테스트 상자에서 현재 시간은 12:49 pm이므로 반환 된 날짜는 2 시간 앞당겨집니다. 왜 그럴 수 있니? 아니면 피들러가 데이트를 해석 한 것입니까?

+0

403 오류는 일반적으로 인증서에 문제가 있음을 의미합니다. 이전에 게시 한 다른 스레드별로 테스트 상자에 certs 관련 문제가 있음을 기억합니다. 당신이 할 수있는 한 가지는 dev 박스에서 가져 오기 대신에 테스트 상자에 새로운 인증서를 생성하고 API 요청을 인증하기 위해 그 인증서를 사용하는 것입니다. –

+0

예 상자를 잠그고 makecert가 설치되어 있지는 않지만 그렇게했다고 생각했습니다. – andrewb

+0

한 번 더 생각해보십시오. 다른 컴퓨터에서 인증서를 만든 다음 테스트 상자에서와 같이 dev 상자에 가져옵니다. 이렇게하면 dev 환경에서 테스트 환경을 다시 생성 할 수 있습니다 (인증서가 실행되는 한). 또한 테스트 상자에 IIS가 설치되어 있는지 확실하지 않지만 IIS를 사용하여 인증서를 만들 수도 있습니다. –

답변

1

개인 키와 함께 PFX 형식 내 개발 컴퓨터에서 인증서를 내보내기 한 후 생산 시스템에서 그 PFX 인증서를 가져 오면 내 경우에는 인증/인증 문제를 해결하는 것이다.

+0

azure는 .cer 파일 만 허용합니다. , PFX에 대해이 작업을 수행하는 방법은 무엇입니까? –

+0

예, Azure의 경우 .CER 파일 만 업로드하십시오 (Azure> Settings> Management Certificates). 내 대답은 Azure와 통신하는 서버의 설정을 언급 한 것입니다. 올바른 인증서를 설치하여 작동되게하십시오. – ueberboss