Microsoft MVP성태의 닷넷 이야기
글쓴 사람
김현 (bghanmu at naver.com)
홈페이지
첨부 파일
 

안녕하세요.
ASP.NET와 SmartClient에 대해서 부족한 점이 많이 이렇게 질문하게 되었습니다.
현재 학교에서 프로젝트를 진행중입니다. 프로젝트 주제는 실행파일 암호화로, 소프트웨어의 불법복제를 막기 위한 것입니다.
제가 맡은 부분은 실행파일을 실행시켰을때, 바로 웹에 접속이 되어 사용자 인증(아이디, 패스워드)을 거치고, 소프트웨어의 시리얼 넘버를 적게 됩니다.
소프트웨어의 시리얼넘버 인증이 성공하면 스마트클라이언트에 접속하여, 2차암호화 툴을 실행시키는 것입니다.

이러한 식으로 프로그램구현중 몇가지 문제가 생겼습니다.
SmartClient를 사용하기위해선 클라이언트 PC에 NETFRAMEWORK가 설치되어있어야 하고,
또한 CAS보안 설정도 해주어야 한다고 알고있습니다.
우선 NETFRAMEWORK는 클라이언트 PC에 설치가 되어있다는 가정하에 CAS보안설정문제에 대해서 여쭙겠습니다.
제가 만든 서버의 주소에 대해서 CAS설정을 .MSI 배포키로 만들어
클라이언트 PC에 설치하면 되는걸로 알고 있는데, 이 .MSI파일을 ActiveX를 사용하지 않고, 바로 SmartClient상에서
자동으로 클라이언트 PC에 설치해 주는 방법은 없을까요?
지금은 SmartClient로 넘어가기 전에 ASP.NET 웹상에서 버튼을 클릭하면 .MSI파일을 실행하도록 만들었습니다만,
사용자 입장에선 불편할수도 있을까봐 자동으로 설치하는 법은 없는지 여쭈어봅니다.
물론 버튼을 클릭하여 설치하지 않으면 스마트클라이언트로 넘어가지 않습니다. ^^

2번째로 웹상에서 시리얼키를 입력시켰을경우, 현재 제가 사용하는 MSSQL 테이블에서 일치하는 시리얼키를 검색해서
있다면, 인증을 성공합니다. 그때 성공한 시리얼키에 대응하는 프로그램의 파일명이 적혀있습니다.
예를 들어,
시리얼키 파일명
1111 calc
이런식입니다. 이때 중요한것은 웹상에서 시리얼키를 입력하고 인증에 성공하면 이에 해당하는 파일명(calc)을
스마트클라이언트로 넘길수 없는가 하는 것입니다. 다름아니라, 스마트클라이언트에서 2차암호화를 실행할때
파일명(calc)이 매개변수로 필요하기 때문입니다.
여기 질문/답변에서는 스마트클라이언트 상에서 DB연동은 힘들다고 하는데, 어떻게 하는 방법이 없을까요?
워낙 제가 무지한지라 지금까지 써놓은 설명을 이해하실수 있을런지 걱정되네요..^^
여기까지 읽어주셔서 감사합니다. 좋은 가르침 기다리고 있겠습니다.








[최초 등록일: ]
[최종 수정일: 12/24/2006]


비밀번호

댓글 작성자
 



2006-12-23 11시50분
[신동열] 첫번째 문제는 CAS 설정용 윈도우 프로그램을 만들고 ClickOnce를 이용해서 배포하시면 됩니다. 설치자동화는 웹 페이지 이동 시키고 자바스크립트로 하시면 됩니다. (저희 회사에서 이렇게 해서 사용합니다. )
두번째 방법은 웹서비스를 사용하시면 될거 같은데요. 웹 서비스를 사용하면 굳이 스마트클라이언트에서 DB에 바로 액세스 하지 않더라도 DB의 정보를 가져올 수 있잖아요. 그리고 웹 상에서 스마트클라이언트로 값을 넘기는 것도 가능 합니다. Object 태그에서 호출하는 클래스에 속성을 만들고 자바스크립트로 넣어면 되거든요.
[guest]
2006-12-26 10시23분
신동열 님이 답변을 너무 잘해주셔서 저는 쓸 말이 없군요. ^^
kevin25
2006-12-27 08시28분
[심현철] [심현철] 설치 자동화에 대해서 자바스크립트로 하라시는데, 조금 만 더 구체적으로 알려주시면 좋겠습니다. 궁금합니다.
[guest]

1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5841guest3/3/202311692프로그램 판매 시 - Upgrade 버전 판매 [2]
5840joe3/2/202312550C# 클래스 라이브러리 수정 -> C++에서 참조시 함수 목록 갱신되지 않음. [4]파일 다운로드1
5839guest3/2/202312582윈도우 서비스 프로그램 - FORM 애플리케이션 감시서비스 [8]
5838랄랄라3/1/202310898event 사용 시 두 표현의 차이점이 있을까요? [1]
5837감사합니...2/28/202311680오라클 DB서버 접속관련 문의 드립니다.(Load Balancing, HA Events) [2]
5836박지범2/27/202310957static instance의 initialize 순서가 보장되나요? [6]
5835주민호2/25/202318594Windows Software Development Kit - 최신버전 1개 남기고 다 삭제하면 안되는지요? [10]파일 다운로드1
5834guest2/24/202310908Python IDE - 비주얼스튜디오 [3]
5833무지남2/23/202310131Async 메서드 그리고 나서 Bool 메서드 [5]
5832김지우2/21/202310906event와 delegate의 차이 , event를 써야하는 이유 [1]
5831이우람2/20/202312219ref 전역변수가 pinned가 될수 있나요? [2]
5830냉수마찰2/19/202311377C# GridView에 Column별 데이터 추가하는 방법에 대해 [1]
5829수박942/19/202313058키움 API를 윈폼과 WPF의 네임스페이스 없이 콘솔이나 WinUI3에서 사용할 수 있는 방법이 있나요? [2]파일 다운로드1
5828김재영2/19/202311767장기적으로는 this 구문을 안쓰는게 맞을까요? [2]
5827lee2/18/202313495파이썬 설치 오류 질문입니다 [1]
5826Syong2/14/202313286Socket 관련 Leak (OverlappedAsyncResult, OverlappedData) 관련 문의 [7]파일 다운로드1
5825박성원2/14/202312381Listview 컨트롤의 화면 전환 시 갱신 속도 [1]
5823검은콩2/13/202315398catch(Exception ex)의 line번호를 쉽게 알 수 없는지요? [7]
5822김지우2/11/202314744책을 보면서 sync, async 이해가 되지 않는 부분이 있습니다. [5]파일 다운로드2
5821검은콩2/9/202311448Async 신뢰성과 소켓데이터 [4]
5820차가워2/8/202311282다른 프로세스 실행 후 포커스 가져오기 [3]
5819취준생2/7/202311917WPF 관련 실무가 궁금합니다. [3]
5818윤길2/7/202311116ObservableCollection 에서 INotifyPropertyChanged 구현해야하나요? [2]
5817흰털너부리2/7/202310650배포 시 winform 실행 콘솔로그 보는 방법 [1]
5816흰털너부리2/6/202310987.net core json array validation 질문 드립니다. [1]
5815김재영2/6/202310820종단간 암호화에 대해 시나리오인데 타당한 시나리오일까요? [2]
1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...