Microsoft MVP성태의 닷넷 이야기
How to support Basic + Windows authentication mode in WCF(RESTful service) [링크 복사], [링크+제목 복사]
조회: 16339
글쓴 사람
꼭지 (jungsoo.seo at sap.com)
홈페이지
첨부 파일
[iis.jpg]   [iis.jpg]    

WCF를 이용하여 RESTful webservice를 구현하고 있는데, 인증 부분에서 문제가 잘 해결이 되지 않네요.
첨부이미지에서 처럼 IIS의 Virtual directory에서 Windows 인증과 Basic 인증을 모두 활성화 시켜 놓았을 때,
WCF의 configuration이 잘 먹질 않네요. webHTTPBinding을 사용하고 있습니다.
IE에서 접근했을때는 문제가 없는데, client program에서 시도 하였을때는 401 에러를 발생시키네요.
혹시 관련 정보가 있으면 도움 부탁드리겠습니다.
고맙습니다.

 

Web.config
<webHttpBinding>
      <binding name="BPCServicesBinding" closeTimeout="01:00:00" openTimeout="01:00:00"
       receiveTimeout="01:00:00" sendTimeout="01:00:00" maxBufferSize="2147483647"
       maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"
       transferMode="Buffered">
            <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
             maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
            <security mode="TransportCredentialOnly">
                  <transport clientCredentialType="Windows" />
            </security>
      </binding>
</webHttpBinding>


Client program:

        Dim sUri As New Uri(uri)
        Dim oRequest As HttpWebRequest
        Try
            oRequest = WebRequest.Create(sUri)
            oRequest.Method = method '"POST"
            oRequest.ContentType = contentType '"application/json"
            oRequest.ContentLength = postBytes.Length
            oRequest.Credentials = New NetworkCredential(userName, password)










[최초 등록일: ]
[최종 수정일: 1/22/2010]


비밀번호

댓글 작성자
 



2010-01-22 03시14분
[꼭지] Q&A는 회원가입을 하지 않아도 작성이 가능하구요. ^^
[guest]
2010-01-25 03시14분
답변이 많이 늦었습니다. 이런 류의 질문들은 환경 구성이 동반되어서 ^^; 마음 단디 먹고 시간을 내어야 되기 때문에 답변이 지연되기 마련이니 이해해 주세요. ^^

이미 해결하셨을지도 모르겠지만.

그나 저나... 저는 ^^; 이상이 없습니다. 아주 잘됩니다.

일단, 제가 테스트 한 과정은 별도 토픽으로 써 놓을 테니 참고하시고요. 문제 해결 잘 되기를 바랍니다. ^^
kevin25
2010-01-25 04시20분
[꼭지] ^^ 우선 확인까지 해주셔서 감사합니다.
다행은 아니지만, 아직 해결이 안되구 있는 있는 문제이네요.
케빈님의 토픽을 기다려봐야 할 거 같은 현재의 상태이네요. ^^

web.config에서 아래 부분을 어떻게 설정을 하셔서 확인을 하셨는지 궁금하네요.
  <security mode="TransportCredentialOnly">
  <transport clientCredentialType="Windows" />

제 경우에선, server + client가 한 머신에 있는 상황에서는 잘 됩니다. 아마 windows 인증으로 접근이 되어서 그러지 싶습니다.
다른 머신에서 해당 서버로 접근할때가 문제가 발생되는데, 아마 이때는 windows가 아닌 basic인증으로 접근을 해서 문제가 발생되는 것 같습니다.


[guest]
2010-01-26 12시19분
아래의 3가지 글을 참고하십시오.

WCF - webHttpBinding 구현 예제
; http://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&detail=1&wid=833

WCF - webHttpBinding 윈도우 인증 구현 예제
; http://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&detail=1&wid=834

WCF - webHttpBinding + IIS 6.0 윈도우 인증 구현 예제
; http://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&detail=1&wid=835

제가 해본 바로는 "서정수"님이 위의 내용을 실수하셨을 것 같지는 않고,,, 아마도 또 다른 요인이 있을 것 같다는 생각이 듭니다. 암튼, 그래도 한번 해보시고 결과 좀 알려주세요. ^^ (참, 그리고 jungsoo.seo@sap.com 메일주소로는 메일이 안 가네요. 혹시 다른 공용 메일 주소 있으면 좀 남겨주십시오.)
kevin25

... 31  32  33  34  35  36  37  38  39  40  41  42  43  44  [45]  ...
NoWriterDateCnt.TitleFile(s)
4720DC4/29/201611108C# 6.0 델리게이트 인스턴스화 관련 질문~ [2]
4719이민구4/29/201612048[시작하세요! C# 프로그래밍] 4.5.1.6 열거형 마지막 예제 질문입니다. [4]파일 다운로드1
4718ds4/27/201610363오라클 DB 칼럼에 있는 특정 데이터를 가져올수가 있나여? [1]
4717최령진4/26/20169442모바일 웹 앱 관련문의 드립니다 [1]
4715과객4/7/201611446TFS 와 Stylecop Integration 시 체크인 정책 적용 방법이 궁금합니다. [1]
4714임형복4/7/201611376DLL 을 프로세스처럼 사용하기 [3]파일 다운로드1
4713김태훈4/5/201611591하위 폴더 권한 상속 문제 [1]
4712차가워4/5/201613291멀티코어 스레드 문의 [1]
4711이대희4/1/201610775Xamarin 라이센스 변경 (Visual Sutuio 무료 사용) [2]
4709가가멜3/25/201635178국내 WPF 책은 왜 2010 년 이후로 전멸인지요? [1]
4704최훈3/15/201615079C# 6.0 예제 7.1 관련 질문입니다. [2]
4702popo3/14/201614576C# WeakReference이 CPU 플랫폼 설정 마다 결과가 틀리게 나옵니다. [9]
4701쌉쓰릅3/13/201612289uwp에서 그림판의 지우개 기능을 구현하려고하는데요 참고할 만한 정보가 있을가요? [2]
4700정우진3/12/201610691안녕하세요. 10049소켓에러의 해결법을 알고싶습니다. - 수정본 [1]파일 다운로드1
4699정우진3/11/201613478안녕하세요. 10049소켓에러의 해결법을 알고싶습니다. [1]
4698지나가는3/10/201612076안녕하세요. 주기적으로 일어나는 .net 관련 질문이 있습니다 [1]
4697정우진3/9/20169697안녕하세요. AWS EC2를 이용한 서버 개발에 대해 질문드립니다. [1]
4696삽질맨3/9/201614271Winform Cold Start 로딩 속도 개선 방법이 없을까요? [1]
4695popo3/9/201612023wpf의 ICommand 질문 입니다. [5]파일 다운로드1
4694아무개2/28/201611643책 잘보고있습니다~ [1]
4693초보2/25/20169836카카오톡 오류 질문 [1]
3701강준2/19/2016193172개의 DataTable Join 결과 전체 컬럼을 DataTable 로 리턴하기 [5]
3700박성훈2/18/201610920시작하세요! C# 6.0 프로그래밍 105쪽 예제 질문 [1]
3699박성훈2/18/201610521공부 방향성 질문 [2]
3698강준2/16/201611140Entity Framework 에서 Select for Update 가 가능한가요??? [1]
3697ds2/16/201610682어느 정도 문법을 알고 나면 [6]
... 31  32  33  34  35  36  37  38  39  40  41  42  43  44  [45]  ...