|
|
IIS 6 can use Microsoft's .NET Passport to authenticate users requesting resources from a web site or a web site virtual directory. The benefit that this solution offers is that the credentials are stored and managed on another server that you are not responsible for building or maintaining. Users can authenticate using the .NET Passport service and then be allowed access to the web site hosted on your WS03 server. The service does not provide access control or site authorization, however. The .NET Passport server can only affirm that a web consumer representing himself or herself to be the person represented by the established profile in the .NET Passport server has successfully authenticated as that person represented by the established profile.
The .NET Passport system is free for the web consumer to register with and use. Web consumers log in and log out at the Passport server, and they are directed to your web site after a successful login event. The login and logout pages may be cobranded so that they appear to be related to the web site that the user is logging in to.
Passport provides a nice system for everyone involved in a web-based transaction, because users get the benefit of a single sign-on solution for any .NET Passport authenticated web site they encounter. The web host benefits because the hosting party does not have to build and support the credentials system or server, but they must pay a fee to the Microsoft .NET Passport service to establish an account with the Passport server. After an account is set up, the web host simply needs to build the web site to respond to users who authenticate. This is the same effort that any web site with an established membership and authentication mechanism would perform regardless of where the members' credentials are hosted, except that they now deal with only authenticated users.
The problem with the .NET Passport system, however, is that many web consumers have not responded quickly to the solution. The web consumer community is apprehensive about providing personal information to the .NET Passport service. Existing web-based vendors and portals have not adopted the use of .NET Passport with great enthusiasm because they generally already have their own authentication systems in place. The benefits of providing a web single login experience are greatly minimized when the web consumer may have to authenticate to other sites that they patronize. Without wide acceptance of the use of .NET Passport by web sites using it as an authentication system, the web single login system will not benefit the web consumer.
Before you can use the .NET Passport service, you need to prepare your site for the service. Following is a review of the steps required for establishing a .NET Passport server setup:
Register the web site through the .NET Passport service. Go to the following URL to begin the process: http://www.microsoft.com/net/services/passport/ developer.asp. Here, you'll fill out a comprehensive series of forms and complete a .NET Passport Wizard with information about yourself and your web site. Table 7-1 summarizes the information required to perform this step.
On successful registration, your site is assigned an ID and registered with a pending status. Microsoft will attempt to replicate the site on its server and approve your site.
Build the site. Microsoft provides a .NET Passport software development kit (SDK) that offers aid and support in your effort to build a .NET Passport web site. The SDK is available free for download from Microsoft's web site at http://msdn.microsoft.com/library/default.asp?url=/downloads/list/websrvpass.asp.
Petition .NET Passport services for a compliance review of the site. If your site meets the standards, you will be required to enter into a contractual agreement with .NET Passport services.
Launch the site. Obtain the encryption keys for the production site and roll in the production code required to support the .NET Passport integration.
Item | Description |
---|---|
Your general contact information | Name, phone, address, e-mail, and so on |
Name of the site | Required-Name used to identify the site in the Passport portal |
Type of .NET Passport service | Required-Choose one or more of the following: Kids Passport, .NET Passport Single Sign-In, .NET Passport Express Purchase |
Web Site Title | Required-Title for the web site |
Domain Name | Required-The top most domain name for the site; no subdomains should be included in the name |
Default Return URL | Required-The URL where customers will be redirected from the Passport server in an error event |
Customer Support Phone Number | Telephone number presented to customers if they need help or support |
Customer Support E-mail | E-mail address presented to customers |
Customer Support URL | URL presented to customers if they need help or support |
Privacy Policy URL | Required-URL presented to customers for your privacy policy |
Cobrand URL | URL for the cobranding file that contains the JavaScript cobranding variables |
Cobrand CSS URL | URL for the cascading style sheet (.css) file that will be used by the .NET Passport pages to make them appear cobranded |
Cobrand Image URL | Required-URL for the site's logo, which should be 468 × 60 pixels |
Cobrand Image2 URL | Required-URL for the site's logo, which must be 2 × 80 pixels, and a .gif |
Cobrand Image HREF | Link for the logo image |
Cobrand Instruction Text | Required-Instructions that will appear at the top of the .NET Passport Credential dialog box |
Registration Return URL | URL of the file that users will be redirected to after login by default |
Terms of Use URL | URL for the terms of use |
Edit URL | URL to the page on the web devoted to editing user's data on your site |
Disable Copyright | Checkbox that will disable the Microsoft copyright link presented in each .NET Passport module |
Disable Help Text | Checkbox that will disable the Microsoft help file link presented in each .NET Passport module |
Disable Member Services | Checkbox that will disable the Microsoft Member Services file link presented in each .NET Passport module |
Disable Privacy Policy | Checkbox that will disable the Microsoft privacy policy file link presented in each .NET Passport module |
Disable Terms of Use | Checkbox that will disable the Microsoft Terms of Use file link presented in each .NET Passport module |
Expire Cookie URL | Required-URL for a file that deletes the .NET Passport cookies; this URL is called when the user performs a logout function |
Logout URL | URL for a file that the passport system will send customers when they sign out of .NET Passport by clicking the .NET Passport Sign Out button |
The registration process identified in step 1 is rather comprehensive. You will also be presented with the .NET Passport Wizard, and you will be expected to establish a .NET Passport. After the wizard completes, you will see a series of web pages prompting you for information-some of which is mandatory to complete the process. The information requested during the registration processes is summarized in Table 7-1.
If you set up a web site or a web virtual directory to authenticate users via .NET Passport, the users will be presented with a .NET Passport login prompt when they request a file for the first time from the web site. The circumstances under which the user will be prompted for their credentials may vary, depending on the site application's use of the .NET Passport service. After the user enters a valid login and password, they are allowed to access the requested file.
To set up IIS to provide .NET Passport authentication, follow these steps:
Open the IIS MMC snap-in and expand the Web Sites node in the left panel.
Right-click the respective web site or virtual directory that should authenticate using .NET Passport. Select Properties.
In the Properties window, select the Directory Security tab.
Click the Edit button under the Authentication And Access Control section. The Authentication Methods window will open.
Under the Authenticated Access section, check the .NET Passport Authentication checkbox. All other authentication methods will be disabled, since using .NET Passport authentication is a mutually exclusive option. Anonymous access can still be selected, however.
If you want, type a domain name in the Default Domain text box. This is the domain to which usernames will be assumed to belong on the host server after the .NET Passport server authenticates them. Realm may be used to identify the organization or domain to which users should be assumed to belong if the server participates in a non-Microsoft system.
Click the OK button to close the Authentication Methods window, and click the OK button to close the Properties window.
If the .NET Passport service is set properly, users will be presented with a .NET Passport prompt that looks like the window shown in Figure 7-2, except the configurations described in Table 7-1 will exist in place of the default values shown in Figure 7-2.
Figure 7-2: .NET Passport login prompt with the default configurations
|
|