Microsoft MVP성태의 닷넷 이야기
[답변]: C#에서 swa + security 구현 방법이 없을까요? [링크 복사], [링크+제목 복사],
조회: 13919
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
부모글 보이기/감추기

^^; 이 글을 통해서, 국세청에서 "전자세금계산서"를 다루는 중임을 처음 알았습니다.

일단, SoapAttachments와 (현재 버전의) WS-Security 표준과는 동작하지 않기 때문에 WCF에서는 제외했다는 소식이 있군요.

Web Services, Opaque Data, and the Attachments Problem - SOAP with Attachments (SwA)
; https://docs.microsoft.com/en-us/previous-versions/dotnet/articles/ms996462(v=msdn.10)?redirectedfrom=MSDN

그러고 보면, 전형적인 "공무원"다운 전자세금서 스펙을 재정했군요. 위의 글에도 나오지만, SwA는 W3C Note 정도로만 올라간 것일 뿐 W3C Recommendation도 아니고 W3C Working Draft 상태도 아니라고 하는데... 어찌 상호운용성이 좀 더 좋은 MTOM을 선정하지 않았는지 이해가 안됩니다.

Web Service Attachments Support Matrix
; http://3.bp.blogspot.com/_6DvmzgV-o20/SPKTKgjAa2I/AAAAAAAAArI/o-luyzN-X7E/s1600-h/attachments.PNG

암튼. 기왕에 이미 이렇게 되어 버렸으니 할 수 없는 상황이군요.

... 말씀하신 것처럼 공식적으로 API 수준에서 제공되는 것은 없는 듯합니다.

대신에... 천천히 하나씩 같이 풀어가 볼까요?
우선, 지금 중요한 것은 SwA를 지원해야 하는 건데 그건 아래의 custom encoder를 사용하면 해결되지 않을까 싶은데요.

WCF SOAP-With-Attachments Message Encoder
; http://wcfswaencoder.codeplex.com/

(위의 Encoder가 정상적으로 동작한다고 가정하고) 이제 Security를 적용해야 하는데요. 전자 세금계산서의 스펙에서는 어떻게 보안 적용을 하도록 되어 있나요? 제가 스펙까지 살펴볼 시간은 없지만, 그런 부분에 대해서 설명을 해주시면 가능한 도움이 되도록 해보겠습니다.








[최초 등록일: ]
[최종 수정일: 7/10/2021]


비밀번호

댓글 작성자
 



2009-10-15 01시42분
[김우진] 답변주셔서 감사합니다.^^
전자세금계산서에서의 Scurity 는, 일반적인 Soap+Security 방식에다가
첨부되는 MIME 메시지에도 전자서명을 하는 방식입니다.
MIME 메시지의 해시값을 SignedInfo 에 http://docs.oasis-open.org/wss/v1.1/wss-v1.1-spec-errata-cd-SwAProfile.html
알고리즘을 이용해서 트랜스폼을 한다음에,
최종적으로 시그니쳐를 추가하여 soap 메시지 완성후에 전송하도록 되어 있습니다.
MIME 메시지는, ANS.1 패키징 바이너리 이고요..
[guest]

1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5781List맨1/5/20234113List.Add("newobj") 속도는 빠른 편인지요? [11]
5780임세1/3/20234684C# 프로그래밍 10 책 구매한 사람입니다. 3부 자료는 어디서 다운 받을 수 있나요? [4]
5779이건우1/2/20233574안녕하십니까 루프안에서 메세지처리에 관하여 질문드립니다! [2]
5778이건우12/30/20224903안녕하세요 c#에서 dll참조 관련 질문드립니다. [4]
5777감사합니...12/29/20223867UI Thread에 Invoke 처리관련 궁금합니다. [3]
5776pdf맨12/28/20223640C# MouseUp Event + pdf [10]
5775민성12/28/20223410안녕하세요 Class 관련해서 예외처리를 하나로 받아낼수 있는 방법 [1]
5774중급12/27/20224234중급개발자란 어느 수준인지요? [4]
5773김영식12/26/20223730c# 압축파일 읽어 올 때 BinaryRead 한글 처리 문제 [1]
5772눈송이12/26/20223893Excel VSTO 는 왜 Net Core, Net 5, 6 버전을 사용하지 않나요? [2]
5771김훈12/26/20223963c# .net client application 망분리(내부망,외부망) 환경에서 의문의 외부사이트 호출 대기 [2]
5770lsh12/26/20223591클라우디움안에 있는 파일을 File.Copy 하고싶은데 코드로는 접근을 못하나요? [1]
5769울타리12/20/20223610Active Directory 2012R2 2016 또는 2019 마이그렝션 문의 드립니다. [1]
5768c++12/14/20224433Thread를 사용한 C++ DLL에 관련된 질문입니다. [6]파일 다운로드2
5767민성12/9/20223758안녕하세요 ashx로 화일을 저장하고 화일명을 리턴하는데요 [1]
5766김명훈12/9/20223901웹브라우저에서 묻지 않고 바로 다운로드 [2]
5765hong12/1/20224150Winform(.Net6) 클라이언트에서 SignalR Core 웹서버에 접속시 인증서 문제 [3]파일 다운로드1
5764요한11/30/20224319c++ 동일한 객체인지 비교 방법문의 [2]
5763고필석11/30/20223848시작하자마자 비정상 종료하는 프로세스에 대한 문제 해결 조언 요청 드립니다. [3]
5762흰털너부리11/30/20223833wpf mvvm ui update 로딩중 표시 [1]
5761민성11/29/20223757죄송하지만 한가지만 더 여쭈어 보겠습니다 [1]
5760민성11/29/20223664안녕하세요 [2]
5759문정환11/28/20223977c# socket 통신할때 빅엔디언으로 바꿔줘야 하나요? [1]
5758라떼11/28/20225275Linux 에서 winform UI 어플리케이션 실행하기 [3]
5757흰털너부리11/25/20224112asp.net core EF AddDbContext,AddDbContextFactory 차이점 알려주세요 [1]
5756흰털너부리11/25/20223750asp.net core web api에서 json 특정 property 무시하는 방법 문의 드립니다. System.Text.Json 사용중입니다. [1]
1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...