As the above figure illustrates, AIF has the following major components:
- User Interface Composition Engine – AIF uses the CAB utilities and services for messaging (event broker), visual containment (workspaces), application loading (module loader), and state management. Even if data and functionality originate from disparate systems, they appear together in the desktop so that agents and customers have a consistent user experience. Session management allows agents to handle multiple customer sessions simultaneously on different channels, without losing the context or state of each session. AIF also lets applications share information and events, so changes made in one pane affect the other hosted applications.
- Hosted Applications – In CCF, a hosted application has a thin wrapper that implements the IHostedApplication interface. Applications can be external (available on a server), Web-based, or they can run remotely under Citrix. In addition, you can use the HostedControl extension class to build a new type of hosted application.
- Centralized Management – The UI layout and the configuration of hosted applications is done centrally through the administrative console. Because different agents might need to use different applications or workflows, the console uses role-based configuration.
You can use any of the following authorization providers:
- Authorization Manager (AzMan – this is the default authorization provider)
- Active Directory with a SQL Server database
- A custom provider to access external authorization mechanisms
AIF uses an ESSO provider so that agents are required to enter their credentials only one time to gain access to applications. CCF uses the ESSO provider found in Microsoft BizTalk® Server 2006. Single sign-on capability complements other security models, such as Kerberos, RSA tokens and SAML for WS interaction. Credentials are encrypted and cannot be read if intercepted before reaching the client computer.