# IAuthenticate

During a bind operation, the moniker can obtain some additional bind information by calling the bind client’s IBindStatusCallback::GetBindInfo. In some cases, additional callback interfaces can be provided by the client requesting the bind operation to supply even more services to the moniker performing the bind. These additional interfaces are typically requested by the moniker calling IBindStatusCallback::QueryInterface for the interface desired. However, a moniker client can also provide additional interfaces through IServiceProvider.

In the case of URL monikers, the IAuthenticate interface is an additional callback interface that the client can provide.

#### When to Implement

Clients of URL monikers can implement this interface to provide the URL moniker with information to authenticate the user. The moniker client that implements IAuthenticate can display a custom user interface or use a custom password list to specify a username and password for accessing secure information on Internet resources.

#### When to Use

The URL moniker calls this interface when the bind operation requires authentication for an URL download. To get a pointer to this interface, call IBindStatusCallback::QueryInterface.

Methods in Vtable Order

IUnknown Methods | Description
QueryInterface | Returns pointers to supported interfaces.
AddRef | Increments the reference count.
Release | Decrements the reference count.

IAuthenticate Methods | Description
Authenticate | Supplies basic authentication to an URL moniker from a bind client.

See Also

IHttpNegotiate, IServiceProvider, IWindowForBindingUI, IWinInetInfo