2012-09-04 2 views
2

사람이있는 경우 내 시나리오에 대한 단순화 된 해결 방법이 있습니다. 이제 아이디어가 없습니다.WebAPI 보안 문제가있는 CORS/JSONP

나는 웹 사이트가 아닌 다른 도메인에 있기를 원하는 WebAPI 서비스를 가지고 있습니다. 이 서비스는 보안되었으므로 기본 인증이 필요합니다.

요청 헤더를 설정할 수 없기 때문에 "jsonp"요청을 보낼 수없는 jQuery에서 호출하고 싶습니다. CORS를 사용해야하므로 json을 사용할 수 없습니다. 어떤 IE6/7에 의해 지원되지 않습니다, 그래서 너무 실용적 아니에요.

내 시나리오를 작동시키는 데 사용할 수있는 다른 옵션이 있습니까?

답변

1

Javascript에서 인증 헤더를 만들면 인증/보안 문제가 발생합니다 (클라이언트 측 = 모든 클라이언트가 자격 증명을 볼 수 있음).

당신은 또한 (대신 헤더) URL에 기본 인증 자격 증명을 보낼 수 있습니다 http://user:[email protected]_domain.com (하지 당신이해야한다).

실질적으로 http request을 수행하는 호출 응용 프로그램에서 서버 측 "프록시"를 만들거나 호출 할 수 있습니다. 필요한 헤더를 완벽하게 제어 할 수 있습니다.

기본 인증 일반 텍스트를 구현 중이므로 잘 SSL을 사용하고 있습니다. 사용자 자격 증명이 클라이언트에 표시되지 않습니다 (호출은 서버 측임).

그러면 Javascript/jQuery에 대한 호출이 "로컬"이됩니다.

문제 : 프록시에 대한 요청을 필터링/유효성을 검사하지 않으면 인증이 너무 쉽게됩니다.

제 H ....

+0

나는 또한 WebApi 될하는 프록시를 만드는 생각했지만 실제로 솔루션으로,로에게이 발표 될 것이 좋습니다 웹에 아무도을 본 적이 - > WebAPI (클라이언트) -> WebAPI (상호 도메인) -> 데이터. 여기에 대략적인 내용이 있습니까? –