Microsoft MVP성태의 닷넷 이야기
SMTP 예외처리 관련 질문 [링크 복사], [링크+제목 복사]
조회: 1840
글쓴 사람
황윤하 (yhhwnag@angtec.com)
홈페이지
첨부 파일
 
안녕하세요 질문 게시판이 있는지 모르고 댓글로 질문을 남겼습니다..
죄송합니다.

SMTP 메일 전송 프로그램을 개발이며, 현재 테스트 중입니다.
저희 회사 내계정 또는 네이버를 이용하여 메일을 전송하면 잘 됩니다.
근데 특정 회사내에서 프로그램을 적용하고 테스트를 하면,

RemoteCertificateNameMismatch, RemoteCertificateChainErrors

이와같은 예외처리가 납니다.
회사에 연락해서 물어본 결과, 인증프로세스는 무조건 포함되어야 하며
인증 시 ID/PWD/메일 계정이 포함되어있어야 하고, 자체 인증서는 사용하지 않는다. 라고 하였습니다.

그래서 인증프로세스를 사용하도록 하였고, Credentials(자격증명)시 ID/PWD를 이용하여 자격증명을 하도록 하였습니다.
자격증명 전에 UseDefaultCredentials을 true로 설정해놓았는데 자격증명로직을 지나가면 UseDefaultCredentials이 false로 바뀝니다.

SMTP관련하여 부족한 부분이 많기 때문에
저러한 예외처리가 나는 이유와 해결하는 방법에 대해서 잘 모르겠습니다... 몇일째 해결못하고 분석만 하는중입니다..

참고로. 예외처리가 나는 회사는 Exchange를 사용, 하며 회사내 자체 메일프로그램을 사용 중입니다.


제 생각으로는
아웃룩에서 새메일 계정만들기를 하고 인증을 하는 부분에서 에러가 난다고 생각합니다.. 그 이유는
1. 인증서가 일치 하지 않아서
- 근데 아웃룩은 메일전송이 됩니다......
- 만약 이 문제가 맞다면 인증서 다운로드 하는 방법이나 무슨 인증서가 존재하는지 어떻게 확인을 하는지 잘 모르겠습니다..
2. 도메인이 연결이 되어있지 않아서
- 거기서 발급해준 아이디가 xxx\xxxx 이와 같이 되어잇는데 구글링 해본 결과 xxx\ <= 이와 같은 형태는 특정 도메인에 연결할 때 쓰인다고 했습니다..
3. 현재 ssl 인증이 트루가 되어있는데 ssl 포트 465가 아닌 기본 포트 25를 사용하는데 ssl 인증을 트루로 해놔서
... 이 정도 입니다.


아시는 부분이 있다면 알려주세요..제발..






[최초 등록일: ]
[최종 수정일: 7/13/2018 ]


비밀번호

댓글 쓴 사람
 



2018-07-13 05시22분
Exchange 서버라면 아마 Active Directory와 연동하는 CA 서버를 사용할 가능성이 큽니다. 그런 경우라면 자체 인증서와 별반 다를 바 없으므로 RemoteCertificateChainErrors 오류의 원인이 됩니다. 그런 경우 그 AD CA의 루트 인증서를 SMTP SSL/TLS 프로그램이 실행하는 로컬 PC에 신뢰할 수 있는 인증서로 등록해야 합니다. 해당 이름은 콜백 메서드의 두 번째 인자로 전달되는 X509Certificate 인스턴스를 살펴보면 알 수 있을 것입니다.

RemoteCertificateNameMismatch 또한, 콜백 메서드 실행 시의 X509Certificate 인스턴스를 살펴보면 나올 것입니다.
정성태

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5366간절함8/7/202037하나의 솔루션에서, 32비트 프로젝트에서 다른 64비트 프로젝트 참조하는 방법 궁금합니다. [4]
5365영귤8/6/202014TimeSpan 구할 때 시간대를 바꿔도 같은 값이 나오는 것 같습니다. [1]
5364박순기8/5/202034visual studio의 menu bar font size 변경방법 문의 [2]파일 다운로드1
5363클락8/1/202085c# 9.0 출간 준비 중이신가요? [2]
5361하태7/29/202067안녕하세요! 바이너리데이터 파싱 질문 드리겠습니다!. [2]
5360진우7/28/2020134엑셀에서 발생하는 모든 이벤트를 감지 할수 있는지 궁금합니다. [7]파일 다운로드1
5358홍길동7/22/202078개체에서 open 속성이나 매서드가 지원 되지 않읍니다.라고 오류창이 뜨는데. [1]
5357손동섭7/22/2020132책 예제코드... [3]
5355neska7/21/202081안녕하세요 문의 드립니다 [1]
5354민성7/15/2020161안녕하세요 db연결 문자 보안 [2]
5353형성재7/14/2020138Visual Studio Setup Project에서 VC++2010재배포패키지설치 [4]
5352윤식7/10/2020160닷넷코어 빌드 시 runtimeconfig 파일을 없앨 수 있는지.. [4]
5351runryan7/2/2020189C# 에서 C++ dll 병렬 사용 [1]
5350홍성호6/29/2020204C++에서 정의된 구조체(공유메모리)를 C#으로 공유메모리에서 구조체 변환시 에러가 발생 합니다. [1]파일 다운로드1
5349jerome.lee6/24/2020133logon credential provider 관련 문의드립니다. [1]
5348776/19/2020294시작하세요 C# 8.0프로그래밍 책에 대한 질문입니다. [8]
5347민성6/19/2020213안녕하세요 WPF Binding에서요 [1]
5346dimohy6/18/2020211Task.WhenAll() 메소드를 이용한 코드를 좀더 짧게 사용하고 싶은데 다른 표현이 있을까요? [3]
5345질문요6/12/2020174idc vs 집 속도 [2]
5344하태6/2/2020271c++ .ilb에서 c# dll 호출 질문 드리겠습니다 (콜백함수 전달) [4]
5343하태6/2/2020215안녕하십니까! c# dll을 c++ .lib에서 호출 질문 드립니다. [4]
5342진우5/30/2020328c++ 에서 C# DLL 사용 문의 [2]
5341미나리5/28/2020316스레드 lock키워드 관련 질문드립니다 [3]
5339민성5/27/2020171WPF cmd을 실행을 할때 파라미터 넘기는 방법 [1]
5338서영준5/26/2020291.Net Core Blazor 서버에 Xing API를 이용한 통신 요청 [5]파일 다운로드1
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...