Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>In my opinion, the "real way" of doing this is to use federation with <a href="http://msdn.microsoft.com/en-us/security/aa570351.aspx" rel="noreferrer">WIF</a> (Windows Identity Foundation, formerly Geneva framework). </p> <p>The idea is that you separate <em>authentication</em> from <em>authorization</em>. The authentication is performed by a so-called STS (Security Token Service) and it manages all the possible login mechanism that you want to support. When a user has been authenticated the STS issues a token containing a set of claims and the user's identity. This token is sent to the web site (called a relying party in this lingo), and the website determines which parts of the site the user has access to based on the claims in the token. WIF supplies both membership and role providers that extract information from token.</p> <p>You can read about creating a <a href="http://msdn.microsoft.com/en-us/library/ee517296.aspx" rel="noreferrer">claims aware website here</a>.</p> <p>One of the pros of this approach is the separation of concerns between authentication and authorization. You do not need any complex membership and roleproviders in your website. Furthermore the STS can be reused to authenticate users to other applications you might have without them having to register more than once (effectively achieving single sign-on)</p> <p>The downside is that you will have to spend some time studying these concepts and coding your STS. Mind you, it is not hard to code an STS with WIF, but it is not a 100% trivial task either.</p> <p>If I have managed to tickle your interest I would recommend that you start out by reading <a href="http://download.microsoft.com/download/7/D/0/7D0B5166-6A8A-418A-ADDD-95EE9B046994/WindowsIdentityFoundationWhitepaperForDevelopers-RTW.pdf" rel="noreferrer">this whitepaper</a>.</p> <p>Kind regards,</p> <p>Klaus</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload