Small width layout Medium width layout Maximum width layout Small text Medium text Large text
     Search
Downloads Downloads Directory Directory Forums Forums Forge Forge Blogs Blogs        Marketplace Marketplace Careers Program Careers
Community › Forums Register  |  

AppTheory specializes in solutions based on the DotNetNuke platform and has 2 employees on the DotNetNuke Core Team.
  Need Help?  
Professional technical support for DotNetNuke is available from DotNetNuke Corporation.
 


  Ads  
The best choice for your web site host, email hosting, and domain registration.
 


  Sponsors  

Meet Our Sponsors

Merak Mail Server
WebSecureStores -- ASP.NET & DotNetNuke Hosting Solutions
FCKeditor Project
Salaro -- Skins and more
OnyakTech
The best choice for your web site host, email hosting, and domain registration.
 


DotNetNuke Forums
 
  Forum  General DotNetN...  Chat About It!  Secure Login - Mixed Blessing
Previous Previous
 
Next Next
New Post 7/16/2007 8:59 AM
User is offline John Mitchell
3854 posts
www.snapsis.com
4th Ranked




Re: Secure Login - Mixed Blessing 

Yes, if the IFrame source that the SourceForge logo is in was actually on the page when you get the mixed mode message then it would be a problem also, but you have corrected that by removing it from the page that has the SSL turned on.  You don't get a mixed mode message when you transfer to a page that does not have SSL, it only happens when you are on a page that has SSL and some of the content from that page is referenced on a non-secure layer.

There is a different kind of warning for when you navigate away from a page that has SSL to one that is not secure.  This is usually turned off by most people, but you can not correct that one by changing the output of your site.

I would disagree that the new SSL is handled correctly in DNN.  The multiple round trips to the server is far from optimal.


 
New Post 7/25/2007 9:32 AM
User is offline Joe Brinkman
1300 posts
www.dotnetnukecorp.com
6th Ranked






Re: Secure Login - Mixed Blessing 

I have done a complete analysis of the Javascript method you describe on your site and the implementation that we have in DotNetNuke and have shown how the DotNetNuke method is much more efficient.  If you have some other alternative we would be happy to evaluate it, but as of now, using server side redirects is clearly the most efficient method.


Joe Brinkman
DotNetNuke Corp.

The Accidental Geek - Joe Brinkman

 
New Post 7/25/2007 11:36 AM
User is offline Mitch Sellers
5564 posts
www.mitchelsellers.com
3rd Ranked




Re: Secure Login - Mixed Blessing 

 jbrinkman wrote

I have done a complete analysis of the Javascript method you describe on your site and the implementation that we have in DotNetNuke and have shown how the DotNetNuke method is much more efficient.  If you have some other alternative we would be happy to evaluate it, but as of now, using server side redirects is clearly the most efficient method.

I too have come to that conclusion as well.  I am still looking for other ideas myself  as it does still appear to be slow at times, I'll post back here if I come up with anything.


-Mitchel Sellers
MCITP, MCPD, MCTS
CEO/Director of Development - IowaComputerGurus Inc.
LinkedIn Profile

Visit mitchelsellers.com for my mostly DNN Blog and support forum.

Visit IowaComputerGurus.com for free DNN Modules, DNN Consulting Quotes, and DNN Technical Support Services

I reccomend 3Essentials for shared hosting and BaseCamp for project management
 
New Post 7/25/2007 4:48 PM
User is offline John Mitchell
3854 posts
www.snapsis.com
4th Ranked




Re: Secure Login - Mixed Blessing 

Wow Joe. I'm beginning to wonder where your priorities are if you are spending all that time on a wild goose chase.

I never said the Javascript method was something that I thought should be implemented in DotNetNuke, as a matter of fact I explicitly stated in one thread that I was not advocating that approach be taken from within the application. I believe it adds too much overhead for the relatively small amount of sites that will actually need that functionality.

What I did say was that the implementation in dotnetnuke was not optimal, and that doing the multiple redirects was not efficient.

Since you did take the time to try and understand it though, I would be remiss if I didn't spend a little time to point out some problems I see in your analysis.

First off, on my site I am not using a POST on the initial request.  I have the link going directly to the site using https, but lets say that all someone did was implement the javas cript in question and the initial request was a POST like your analysis shows. 

You may not realize this, but in DNN 4.5.2 the Login skinobject was changed to be a command button so that postback processing could be done for the new returnurl feature.
So the redirect you are seeing after postback is in fact being caused by the server-side processing to add the returnUrl to the querystring. Again this is not the most optimal way of achieving that new feature.  It would be better to have left it as a hyperlink and on Page_Load add the returnurl to the querystring. 

So the first redirect that your analysis is showing for both methods is actually the server-side code of the login click method, not a 302 redirect from the client-side.  Can someone actually create a 302 redirect using location.href? Try this. Start up you favorite monitor and hit this link: http://www.snapsis.com?ctl=login. Did you record any 302 responses from the server? No, but it is sitting on a secure channel when we asked for a normal one.  Is it magic?  No, changing location.href from the client produces a GET request that is performed without a round trip to the server.

Now, I would expect that you not try to bias any of this thorough analysis you did by starting with the assumption that you have to be right, but the results you give on performance are pretty hard to believe from a high level view. Why would you ever consider that doing two round-trip redirects to the server would be faster than one redirect?  Doesn't that strike you as odd?  Is it because you believe that the payload delivered after the postback is slowing it down?  My guess is that you did your measurements without starting from a cold benchmark, so it just appears that your second method is faster. Anyone really looking at the data you produced can easily see this since the last 200 GET request on both methods is almost exactly the same in size, yet you show it taking longer.

Nice diagrams.

 


 
New Post 7/25/2007 6:38 PM
User is offline Joe Brinkman
1300 posts
www.dotnetnukecorp.com
6th Ranked






Re: Secure Login - Mixed Blessing 

John - My priorities are where they should be: making sure the community is getting the complete picture and is not just taking someone's word for it because they happen to post a lot to the forums. You have repeatedly said that the DotNetNuke SSL implementation is innefficient and you point people to your javascript tip as a better method - which it is not. The SSL implementation is completely independent of the login link implementation. In fact given that the two features were implemented in different releases just highlights this fact.  The configuration on your site for the login page is not related to the SSL implementation. Having a direct login page link is possible with or without SSL. I can create a login link on any DotNetNuke site that links directly to the login page without requiring a single change to any SSL code.  The only item that is different between the two SSL methods is how we redirect from HTTP to HTTPS. 

The very fact that you attempt to post more misleading information here just makes my point. If you go to the link http://www.snapsis.com?ctl=login your browser will issue an HTTP GET request on port 80 and will receive a complete page of 16342 bytes. This page will then change the location.href which will cause the browser to issue another GET request on port 443 which will recieve a second page of 16362 bytes. If this had used the SSL implementation from DotNetNuke then the first GET request would have resulted in in a 302 response of roughly 250 bytes. You completely ignored the analysis of the processing that occurs to build that first HTTP page you return, which the user never fully gets to see and which is therefore just wasted bandwidth usage. Using location.href is not magic. Your browser must still make a request back to the server to get the new page you have requested by changing the page location. So to answer your question no the browser is not causing a 302 redirect using your method. It is causing a whole request/response cycle which means rebuilding the whole page on the server and resending that page a second time using HTTPS. This is much less efficient than using a 302 redirect as indicated in my original analysis which you ignored.

I have not put any bias into my analysis which is why I included the raw XML in my Blog so that everyone could look at the raw numbers and come to their own conclusions.


Joe Brinkman
DotNetNuke Corp.

The Accidental Geek - Joe Brinkman

 
Previous Previous
 
Next Next
  Forum  General DotNetN...  Chat About It!  Secure Login - Mixed Blessing
 


Forum Policy

These Discussion Forums are dedicated to the discussion of the DotNetNuke Web Application Framework.

For the benefit of the community and to protect the integrity of the project, please observe the following posting guidelines:

1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DotNetNuke.
2. Discussion or promotion of DotNetNuke product releases under a different brand name are strictly prohibited.
3. No Flaming or Trolling.
4. No Profanity, Racism, or Prejudice.
5. Site Moderators have the final word on approving/removing a thread or post or comment.
6. English language posting only, please.

 


Willhite & Sharron Realtors
Exemplary service for your Seattle Real Estate needs. It's what you deserve from your Realtor®!
www.alkihomes.com
Swanzey Internet Group LLC
DotNetNuke design, development, e-Commerce, hosting, maintenance, and training. Exclusively DotNetNuke.
www.swanzey.com
Lucede Systems Group
Providing a full range of IT services for large and medium sized companies
www.lucede.com

DotNetNuke Corporation   Terms Of Use  Privacy Statement
DotNetNuke®, DNN®, and the DotNetNuke logo are trademarks of DotNetNuke Corporation
Hosted by MaximumASP