none
silverlight 5 Elevated Trust In-Browser 배포시 문제? RRS feed

  • 질문

  • 안녕하세요.

    silverlight 5 Elevated Trust In-Browser에 대해서 의문되는 사항이 있어서 질문올립니다.

    silverlight 5의 in-Broweser 기술로 웹에서 클라이언트의 실행파일을 실행하는 부분을 만들어보았습니다.

    ex) http://xamlgeek.net/2011/04/20/silverlight-5-elevated-trust-in-browser/

    1. xap 파일 서명을 통한 인증서 설치(신뢰받는 게시자, 신뢰받는 루트 인증기관 2곳)

    2. 레지스티리 수정

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Silverlight\

    Add the following DWORD key "AllowElevatedTrustAppsInBrowser" with 0×00000001.

    2가지의 과정을 통해서 완전신뢰를 획득한후에 실행할 수 있었습니다.

    그런데 위의 기술을 사용하기 위해서는 해당되는 인증서를 각각의 사용하고자 하는 곳에서 설치해야 제대로 작동해서 배포시에 문제가 됩니다.

    인증서는 서버에 설치해두고 클라이언트가 웹에 접속할때 이 인증서를 받아서 사용자의 동의에 따라 설치된 후 사용하는 방법은 없을까요??

    2012년 3월 5일 월요일 오전 9:33

답변


  • 안녕하십니까? akangels 님,

    ASP.NET 인증 서비스를 사용해서 Silverlight 응용프로그램을 통해 로그인하는 방법이 가능한거 같습니다

    이를 위해서 두가지 요구 사항이 있습니다.
    사용자가 암호를 사용하여 Silverlight 응용 프로그램을 신뢰하기 전에 응용 프로그램의 ID를 확인할 수 있어야 하기 때문에 SSL(Secure Sockets Layer)이 필요합니다. 따라서 암호를 받아들이는 일반 웹 페이지와 마찬가지로 SSL 사용 사이트(https:// 주소)에서 암호를 받아들이는 Silverlight 응용 프로그램의 XAP 패키지를 호스팅해야 합니다.
    사용자가 네트워크를 통해 통신할 때 사용자의 자격 증명을 보호하려면 SSL을 사용하여 인증 서비스 자체를 호스팅해야 합니다.

    [참조문서]
    방법: ASP.NET 인증 서비스를 사용하여 Silverlight 응용 프로그램을 통해 로그인

    제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.
    제시해 드린 답변이 도움이 되었기를 바랍니다.
     
    답변이 문제 해결에 도움이 되었다면 답변으로 채택을 부탁드립니다.하지만 문제 해결이 되지 않아서 정확한 답변을 원하는 경우에는 문제의 정보를 더 자세하게 답변으로 제공해주시기 바랍니다.

     

    • 답변으로 표시됨 akangels 2012년 4월 23일 월요일 오전 2:52
    2012년 3월 9일 금요일 오전 8:47
    중재자

모든 응답

  • 안녕하십니까? akangels 님,
    Microsoft MSDN의Forum 사이트를 방문해 주셔서 감사합니다.

    문의 하신 ”silverlight 5 Elevated Trust In-Browser 배포시 문제?”에 대해 답변드리겠습니다.

    제 생각에는 불가능할 것 같습니다.
    MS 문서내에 아래와같이 명시 되어있습니다.

    XAP 파일 보호
    XAP 파일이 다른 권한 없는 HTML 페이지에 호스팅되지 않도록 조치를 취해야 합니다. 이렇게 하려면 EnableHTMLAccess가 true인 경우 HtmlDocument.DocumentUri 속성을 사용하여 XAP 파일을 시작할 때 호스트 페이지 URL을 확인합니다.
    또한 암호 및 다른 비공개 정보와 같은 중요한 데이터를 XAP 파일에 저장하지 않습니다. 정보가 난독 처리되어 있더라도 악의적인 사용자가 XAP 파일에서 이 정보를 검색할 수 있습니다.

    [참조문서]
    XAP 파일 보호

    제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.
    제시해 드린 답변이 도움이 되었기를 바랍니다.
     
    답변이 문제 해결에 도움이 되었다면 답변으로 채택을 부탁드립니다.하지만 문제 해결이 되지 않아서 정확한 답변을 원하는 경우에는 문제의 정보를 더 자세하게 답변으로 제공해주시기 바랍니다.

    2012년 3월 8일 목요일 오전 6:27
    중재자
  • 답변 감사합니다...

    그런데 답변에 대한 내용을 잘 이해하지 못하겠어서 다시 질문드리겠습니다.

    제가 만들려고 했던 것은

    실버라이트에서 응용프로그램을 실행할 수 있는 기술에 찾아보다가 실버라이트5의 silverlight 5 Elevated Trust In-Browser를 사용해보았습니다.

    코드상의 예로 들자면

    dynamic cmd = AutomationFactory.CreateObject("WScript.Shell");

    cmd.Run(@"c:\windows\notepad.exe", 1, true);

    이렇게 간단한 코드로 실버라이트에서 메모장을 여는방식입니다.

    즉, 실버라이트에서 응용프로그램을 실행할 수 있는 방법입니다.

    그런데 이 방법을 쓰기 위해서는 XAP파일이 서명된 인증서 설치와 레지스트리 수정을 각각의 클라이언트에 세팅해주어야만 사용가능합니다.

    이러한 과정은 너무 번거로워서요.

    인증서는 서버에 설치해두고 클라이언트가 웹에 접속할때 이 인증서를 받아서 사용자의 동의에 따라 설치된 후 사용하는 방법은 없을까요??

    아니면 완전신뢰에 대한 다른 방법은 없나요?? 아니면 실버라이트에서 이러한 처리를 할수 있는 다른 방법은 없을까요??

    포럼에서 코멘트 해주기 어려우신거라면.. msdn에 기술지원을 받을 의향도 있습니다.

    이것에 대한 코멘트 부탁드립니다.

    2012년 3월 8일 목요일 오전 8:03

  • 안녕하십니까? akangels 님,

    ASP.NET 인증 서비스를 사용해서 Silverlight 응용프로그램을 통해 로그인하는 방법이 가능한거 같습니다

    이를 위해서 두가지 요구 사항이 있습니다.
    사용자가 암호를 사용하여 Silverlight 응용 프로그램을 신뢰하기 전에 응용 프로그램의 ID를 확인할 수 있어야 하기 때문에 SSL(Secure Sockets Layer)이 필요합니다. 따라서 암호를 받아들이는 일반 웹 페이지와 마찬가지로 SSL 사용 사이트(https:// 주소)에서 암호를 받아들이는 Silverlight 응용 프로그램의 XAP 패키지를 호스팅해야 합니다.
    사용자가 네트워크를 통해 통신할 때 사용자의 자격 증명을 보호하려면 SSL을 사용하여 인증 서비스 자체를 호스팅해야 합니다.

    [참조문서]
    방법: ASP.NET 인증 서비스를 사용하여 Silverlight 응용 프로그램을 통해 로그인

    제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.
    제시해 드린 답변이 도움이 되었기를 바랍니다.
     
    답변이 문제 해결에 도움이 되었다면 답변으로 채택을 부탁드립니다.하지만 문제 해결이 되지 않아서 정확한 답변을 원하는 경우에는 문제의 정보를 더 자세하게 답변으로 제공해주시기 바랍니다.

     

    • 답변으로 표시됨 akangels 2012년 4월 23일 월요일 오전 2:52
    2012년 3월 9일 금요일 오전 8:47
    중재자