Integrated Deployment Scenario
Figure 6: Integrating Intellicus
Single Sign-on
To achieve Single Sign-on, the following need to be considered:
Synchronizing users
- Users synchronizing activities can be manually done from Intellicus portal. You can choose to:
- Create/Edit users in Intellicus to synchronize users of Host Application.
- Grant System privileges and access rights .
- The users in Intellicus shall be shadow users (without storing their passwords in Intellicus system). Each user will map one-to-one with host application user. User mapping can be provided from Intellicus portal.
- Intellicus provides JAVA APIs to manage users from a host application. This method can be used if Host Application wants to control whether user has to be created in Intellicus or not based on their requirement.
- Third method is dynamic user synchronization with the help of integration.xml file. Users can be created, mapped, assigned system privileges and access rights by by one-time configuration activity performed in this file.
Passing Credentials when navigating to Reports
When user navigates from host application to Intellicus the credentials can be passed with the help of single sign-on APIs. SingleSignOn.setUserInfo method passes the user credentials like userId and orgId from Host Application to Intellicus.
Authentication
- Following mechanisms can be used to verify passed credentials again in Intellicus
- Call Back
- You can Plug-in your custom code to authenticate passed Userid (loginname), Password (password), Orgid(Customerid) from your database.
- External authenticators
- You can configure external authenticators such as LDAP
Data Filtering
- UserId and CustomerId are now available with Intellicus as passed from host application
- Data filtering at User level or Customer level can be achieved by:
- Each Report SQL will be designed using parameters (place holders) in the WHERE clause to filter dataExample: (Select … where Tab1.CustomerID=<%CustomerId%>
- Intellicus Report Server will replace the parameter values just before SQL execution
Intellicus Repository
Intellicus repository is a set of few tables in database that stores:
- Report Categories and Reports
- Users and Roles
- Schedules
- Access Rights of users on reports
- Intellicus repository also uses file system to store generated report output, which are saved for future use
Access Rights
- Intellicus manages Users and Roles under Organizations
- An Organization logically maps to a Customer of yours
- Roles can be granted to users
- Access Rights can be assigned to Users and Roles for
- Listing and Running Reports in selected Report Categories
Embedding Report Screens
- Each Intellicus screen is an embeddable web page
- Any screen can be embedded into your web application seamlessly using URLs in iFrames
- You can also choose to call complete Intellicus portal in new window (bypass login screen)
- Intellicus screens can be customized using style sheets to match your web application’s UI standards
- It is also possible to navigate back to your application’s screens from reports by designing report drill downs accordingly
Embedding Category Listing Screen
Figure 7: Advanced Report List
Embedded Report Screen
Figure 8: Embedded Report Screen
Embedded Dashboards
Figure 9: Embedded Dashboards
Reporting Flow
Host application can call URL to list report categories
Intellicus will list categories accessible to logged in user
User selects a report category to list reports and gets options to
- Run a report
- Schedule a report
- Email a Report
- View saved reports instance
Prompt Report Parameters Screen
Figure 9: Report Parameters Screen
Report Output Screen
Different operations that can be performed from report output (save, email, export in different formats etc.)
Figure 10: Report Output Screen
Report Scheduling Screen
Figure 11: Report Scheduling Screen
Saving Report Output Screen
Figure 12: Save Report Output Screen
Report Emailing Screen
Figure 13: Email Report Output Screen