A friend tells me that he uses Basic authentication of IIS for authentication of his web app. This system uses Kerberos too, but how can Basic Authentication and Kerberos work together?! I know that Basic Authentication sent password in Base64 (like cleartext), and Kerberos doesn't send the password across the network, it uses a ticket system. So, how can Kerberos intregrate with Basic authentication?
|
feedback
|
|
I think what the application must be doing is prompting the user for a username and password, and then using that to authenticate against some back-end Kerberos system. At this point, the web app can impersonate the user and connect to other resources as necessary. Microsoft has a brief writeup of this technique here. I don't think it's a great idea in general, as the user now has to trust the web server not to stash his password and/or impersonate him in unwanted ways. With a pure Kerberos setup, the user can be confident that the web server is who it claims to be, and limit delegation, without revealing his password to anyone. However, firewalls, the internet, and various other factors often make it attractive or necessary to use Basic authentication instead of pure Kerberos. | |||||||
feedback
|
|
Most web applications use basic authentication, also known as forms-based authentication, typically with SSL to secure the credentials. The only time you would use Integrated authentication is on an Intranet site (SharePoint is a well-known example of something that can leverage integrated authentication). Integrated authentication sounds fantastic, but it can be tricky to get working properly and keep it working reliably. Forms-based authentication is typically more reliable. The webserver takes the credentials supplied by the user, and authenticates with Active Directory on their behalf using ... Kerberos. If the web application needs to impersonate the user and access resources external to the IIS server (a common scenario), Kerberos authentication is required. (I.e., NTLM authentication will not work in that impersonation scenario). | |||||
feedback
|