Signers

Signers are classes that provide the methods to perform automatic sign-in for various applications. In CCF, the Signers class follows the Provider design pattern. All Signers classes are written through the ISigner interface.

The following table defines the methods of the interface.

Signature

Description

void DoLogin(object application)

This method performs the logon operation. It uses the data provided to identify the controls in the form and the credentials to be populated.


Different applications have different types of signers (for example, ExternalAppSigner, HostedAppSigner, and WebAppSigner). Because different types of signers require different information for different applications, CSF passes the instance of the application by passing this reference.

An ApplicationSigner class acts like a router to route the calls to the DoLogin method from various applications to their appropriate signer classes.


The following example procedure uses a simple hosted application named SSOLoginWinControl. This application validates a user name and password, and reports that the logon passed or that it failed.

To set up a HostedAppSigner for the SSOfLoginWinControl-hosted application

  1. Create the HostedAppSigner class that implements the ISigner interface.
  2. Add an entry to the ApplicationSigner class in the DoLogin function to route the data to the appropriate signer for the application, as shown in the following example.
  3. If(applicationName == “SSOStandAloneApp”)

  4. {

  5. HostedAppSigner HostedAppLogin = new HostedAppSigner();

  6. HostedAppLogin.DoLogin(application);

  7. }

  8. Make sure that SSOLoginWinControl is configured to run in AgentDesktop.
  9. Compile the HostedAppSigner project, and copy the DLL to the AgentDesktop bin folder.
  10. Use the Admin Console to configure the Signer Provider to add a configuration to the database. (For more information about the Admin Console, see the CCF 2009 SP1 Deployment Guide.)
  11. Alternatively, add the following to the App.config file of AgentDesktop solution:

    1. In the <sectionGroup> add:
    2. <section name="Csr.Signer.Providers.SignerProvider" "type="Microsoft.Ccf.Common.Providers.Configuration.ProviderConfigurationHandler, Microsoft.Ccf.Common.Providers" />"

    3. In the <Microsoft.Ccf> section, add:
    4. <Csr.Signer.Providers.SignerProvider defaultProvider="ApplicationSigner"><providers><add name="ApplicationSigner" type="Microsoft.Ccf.Samples.Csr.Signer.ApplicationSigner, Microsoft.Ccf.Samples.Csr.Signer" /></providers></Csr.Signer.Providers.SignerProvider>


Show: