Available Authentication Modes

Last modified: April 16, 2010

Applies to: SharePoint Server 2010

In this article
Pass-Through Authentication
RevertToSelf Authentication
WindowsCredentials Authentication
Credentials Authentication
DigestCredentials Authentication

The following authentication modes are available when you use the Microsoft Business Connectivity Services (BCS) to connect to a Web or WCF service.

Pass-through authentication refers to the ability of the operating system to pass a client's authentication information to the external system. BCS supports pass-through authentication for database connections and Web/WCF service connections. When you use pass-through authentication, you authenticate as the identity of the end user.

When you access the BDC from a Web page, it runs in the Microsoft Internet Information Services (IIS) worker process, w3wp.exe. The identity of this process is the IIS application pool account impersonating the logged-on user. To avoid losing the logged-on user's identity when BDC authenticates to the back-end server, you must enable Kerberos delegation between the server running IIS and the other computer. Kerberos delegation enables a receiving server to send the authentication request to the proper location.

When you use BDC for crawling, it runs in the filter daemon process, mssdmn.exe. To access the back-end content source, the threads in the filter daemon process impersonate the content access account associated with that back-end content source.

One drawback to using pass-through authentication is that the operating system exposes only the user name and password. Therefore, if a company uses two-factor authentication (if users are required to have some specific—private—information in addition to a user name and password), you cannot use pass-through authentication.

Simplicity of use makes pass-through authentication a good candidate for use in a testing environment. You might also use it if the Web service or the destination server uses anonymous authentication or SSL connections.

If a user logs on with Windows authentication, IIS impersonates that particular account. While IIS runs under the application pool identity, it impersonates the logged-on user, and the request runs under the user's impersonation before it is passed forward.

RevertToSelf authentication enables you to revert this impersonation and authenticate as the underlying account that is configured for the IIS application pool.

Caution note Caution

If custom code uses RevertToSelf for authentication, it can grant users system-level privileges on the back-end servers by granting privileges to the application pool identity. Ensure that you thoroughly test any custom code before you run it on a production system.

Microsoft SharePoint Server 2010 authenticates by using Windows credentials from its provided Secure Store Provider. Use this mode if your Web or WCF service uses Windows authentication. You need to set up Secure Store Service before using this mode. When you use Windows credentials, BDC tries and splits the username field that is returned from Secure Store Service into domain\user and then uses the domain, username, password triad to authenticate.

Microsoft SharePoint Server 2010 authenticates Web/WCF service systems by using credentials other than those from Windows authentication from its provided Secure Store Provider. These credentials are used for basic authentication or digest authentication, depending on the configuration of the Web services server. Because basic authentication and digest authentication do not adequately protect credentials, you should use SSL or IPSec (or both) to secure communication between the Web services server and the server that is running BDC.

Use this mode if your Web service uses credentials other than Windows credentials. You need to set up Secure Store Service before using this mode. When you use Credentials, BDC does not attempt to split the username field that is returned from Secure Store Service into domain\user as in WindowsCredentials mode but rather uses the username, password directly to authenticate.

Microsoft SharePoint Server 2010 can also authenticate WCF service systems by using the HTTP Digest credentials. See ClientCredentials.HttpDigest Property for more details.

If you get an application definition import error that states BDC is unable to connect to the WSDL, note that the WSDL may not be public. In such a case, you need to set up authentication by using one of the modes discussed in this topic, or manually copy the WSDL to the local system and point the WSDLFetchURL to the file URL.