<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.silverlight.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Programming with .NET - General</title><link>http://forums.silverlight.net/forums/17.aspx</link><description>General discussions around authoring Silverlight .NET applications.</description><dc:language>en</dc:language><generator>CommunityServer 2007 (Build: 20416.853)</generator><item><title>Re: Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/73066.aspx</link><pubDate>Mon, 21 Jul 2008 12:21:59 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:73066</guid><dc:creator>adefwebserver</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/73066.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=73066</wfw:commentRss><description>&lt;p&gt;&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="/Themes/silverlight/images/icon-quote.gif"&gt; &lt;strong&gt;robhouweling:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt; 
&lt;p&gt;In the method you outlined, can you explain how you determine the call is made from the Silverlight application instead of a normal aspx page?&lt;br /&gt;If a hacker calls the webservice using an aspx page using the password he got, from first opening the page the normal way, he can use your webservice. &lt;/p&gt;
&lt;p&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;/p&gt;
&lt;p&gt;That&amp;#39;s why I put in the IPAddress check. The hacker would have to be on your computer or using some sort of IP spoofing AND they have to do this before you logged in again and caused your temporary password to change.&lt;/p&gt;
&lt;p&gt;You should never pass the &amp;quot;real&amp;quot; user password from the Silverlight app to the web service.&lt;/p&gt;</description></item><item><title>Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/73004.aspx</link><pubDate>Mon, 21 Jul 2008 09:06:47 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:73004</guid><dc:creator>Yi-Lun Luo - MSFT</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/73004.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=73004</wfw:commentRss><description>&lt;p&gt;Hello, there&amp;#39;s no way to tell if the request comes from your Silverlight application or another client. This is similar to in a classic web application, there&amp;#39;s no way to tell if the user is using IE/Firefox or a hack browser that simulates IE/Firefox&amp;#39;s request. But there&amp;#39;re still a lot of solutions to enhance your service&amp;#39;s security. I don&amp;#39;t know PHP. But generally speaking, you should enable session on your web services, so only authenticated users can access the service. In WCF, you can use ASP.NET session, I think there&amp;#39;s something similar on PHP. When Silverlight makes a request to the service, it will automatically send the session information, if any. It&amp;#39;s very difficult to hack session, since each session will have a different id. Of course, you still need your users to protect their passwords. Even in a classic web application, if the hacker gets the password, he can still do anything that user can, right?&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72956.aspx</link><pubDate>Mon, 21 Jul 2008 05:44:44 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72956</guid><dc:creator>robhouweling</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72956.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72956</wfw:commentRss><description>&lt;p&gt;Hi Michael,&lt;/p&gt;
&lt;p&gt;In the method you outlined, can you explain how you determine the call is made from the Silverlight application instead of a normal aspx page?&lt;br /&gt;If a hacker calls the webservice using an aspx page using the password he got, from first opening the page the normal way, he can use your webservice. &lt;/p&gt;
&lt;p&gt;I agree it does make it more difficult, but it&amp;#39;s not totally secure.&lt;/p&gt;
&lt;p&gt;Maybe I misunderstood, so please correct me if I&amp;#39;m wrong.&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72907.aspx</link><pubDate>Sun, 20 Jul 2008 21:44:16 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72907</guid><dc:creator>adefwebserver</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72907.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72907</wfw:commentRss><description>&lt;p&gt;I outline a method here:&lt;/p&gt;
&lt;p&gt;&lt;a id="dnn_ctr376_MainView_ViewEntry_lblBlogTitle" href="http://silverlightdesktop.net/Default.aspx?tabid=56&amp;amp;EntryID=16"&gt;Implementing &amp;quot;Super Tight Security&amp;quot;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Basically you can store the IP address when the Silverlight App is launched and then only accept requests from that IP address. That combined with a random password should make hacking your web service very difficult.&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72857.aspx</link><pubDate>Sun, 20 Jul 2008 12:24:38 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72857</guid><dc:creator>robhouweling</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72857.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72857</wfw:commentRss><description>&lt;p&gt;There is no way to be 100% certain calls are made from your silverlight app. Using a key won&amp;#39;t help either because the code can easily be read using tools like reflector. &lt;br /&gt;When you want to display such sensitive info using webservices it&amp;#39;s probably best to let the user login first before they can access the information.&lt;/p&gt;
&lt;p&gt;However, this is not really a Silverlight issue, but a common question when it comes to webservices.&lt;/p&gt;
&lt;p&gt;Try this article for more info on securing webservices:&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa302428.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa302428.aspx&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72846.aspx</link><pubDate>Sun, 20 Jul 2008 10:04:21 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72846</guid><dc:creator>omeganet05</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72846.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72846</wfw:commentRss><description>&lt;p&gt;I read about this. But I want to ensure that my WebService will be called only from my Silverlight app. How can I achieve this? Don&amp;#39;t I need to use my private key to crypt the data so the server can use my public key to decrypt it?&lt;br /&gt;&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72842.aspx</link><pubDate>Sun, 20 Jul 2008 08:59:32 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72842</guid><dc:creator>robhouweling</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72842.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72842</wfw:commentRss><description>&lt;p&gt;To secure it, all you have to do is call the webservice using https. Since Silverlight runs in a sandbox in the browser, the browser will handle the https for you. This is not something you need to create yourself.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72841.aspx</link><pubDate>Sun, 20 Jul 2008 08:55:46 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72841</guid><dc:creator>omeganet05</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72841.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72841</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;Thanks! I created my PHP WebService. Everything is OK. Now I have to secure it. I want only my Silverlight app to be able to send data to this WebService. So I need a certificate. I have to include my private key in my Silverlight app and put my public key on the server. But is it secure when I include my private key? Can&amp;#39;t it be found?&lt;br /&gt;&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72618.aspx</link><pubDate>Fri, 18 Jul 2008 16:35:41 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72618</guid><dc:creator>justncase80</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72618.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72618</wfw:commentRss><description>&lt;p&gt;That&amp;#39;s ok, in this context a webservice is just a SOAP web service. A WSDL is the service description and this is a standard protocol. I&amp;#39;m not PHP expert but I&amp;quot;m pretty sure you can find some libraries to create SOAP webservices.&lt;/p&gt;&lt;p&gt;&amp;nbsp;For example: http://devzone.zend.com/node/view/id/689&lt;/p&gt;&lt;p&gt;Anyway, you create your SOAP webservice in PHP, or Java or .NET or whatever then in your Silverlight application you can &amp;quot;Add a service reference&amp;quot; and point it to the WSDL url. From there it will know how to generate classes for you that can interact with your web service.&lt;/p&gt;&lt;p&gt;I believe there are also ways to interact with REST webservices (which are very common in PHP) but I&amp;#39;m not sure if that is implemented in Silverlight yet. It might be worth looking into at least.&lt;br /&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72594.aspx</link><pubDate>Fri, 18 Jul 2008 15:38:50 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72594</guid><dc:creator>omeganet05</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72594.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72594</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;It looks very easy with WebServices, but my hosting does not provide .NET content. So I have to think of a workarround with PHP. Does anybody have done something like that with PHP? &lt;img src="http://silverlight.net/emoticons/emotion-7.gif" alt="Tongue Tied" /&gt;&lt;br /&gt;&lt;/p&gt;</description></item><item><title>Re: Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72565.aspx</link><pubDate>Fri, 18 Jul 2008 14:32:15 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72565</guid><dc:creator>justncase80</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72565.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72565</wfw:commentRss><description>&lt;p&gt;Basically you would setup a Service Reference to your webservice, only instead of using the URL:&lt;/p&gt;&lt;p&gt;http://localhost/MyService.svc?WSDL&lt;/p&gt;&lt;p&gt;You would use:&lt;/p&gt;&lt;p&gt;&lt;b&gt;https&lt;/b&gt;://localhost/MyService.svc?WSDL&lt;/p&gt;&lt;p&gt;&amp;nbsp;It should be that simple. Of course replace everything after https with the URL to your WSDL for your service.&lt;br /&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72564.aspx</link><pubDate>Fri, 18 Jul 2008 14:27:31 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72564</guid><dc:creator>sladapter</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72564.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72564</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;&lt;a href="http://silverlight.net/forums/p/16672/55418.aspx#55418" title="http://silverlight.net/forums/p/16672/55418.aspx#55418"&gt;http://silverlight.net/forums/p/16672/55418.aspx#55418&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Re: Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72560.aspx</link><pubDate>Fri, 18 Jul 2008 14:18:37 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72560</guid><dc:creator>omeganet05</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72560.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72560</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;How can I use SSL with Silverlight? I can configure my web server to use SSL, but how to make requests from my app? Can you give me a example code (even with web services)?&lt;br /&gt;&lt;/p&gt;</description></item><item><title>Re: The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72545.aspx</link><pubDate>Fri, 18 Jul 2008 13:48:10 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72545</guid><dc:creator>justncase80</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72545.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72545</wfw:commentRss><description>&lt;p&gt;The most obvious answer is to just use SSL. Your webservice would only communicate from secure requests, your service urls would probably change to &amp;quot;https&amp;quot;. To do this you just need to have an SSL certificate and set it up for your site on your server. This is basically just a server configuration issue then a little bit of code to ensure that incoming service requests are done through https.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not really sure how you would do this in PHP or apache though.&lt;/p&gt;</description></item><item><title>The most secure way to POST data to a website</title><link>http://forums.silverlight.net/forums/thread/72543.aspx</link><pubDate>Fri, 18 Jul 2008 13:44:16 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:72543</guid><dc:creator>omeganet05</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/72543.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=72543</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;I have a Silverlight 2 beta 2 app which communicates with a PHP site, which saves the data in MySQL. If a malicious user view the headers sent by my app, he can modify them to insert malicious data in my DB. So I need to protect the commucination between my app and my site. What is the most secure approach?&lt;br /&gt;&lt;/p&gt;</description></item></channel></rss>