Configuring multitenancy that is based on a custom tenant provider

You can create a custom Java class and reference it when configuring multitenancy. You can use this method when you need to join data from multiple authentication providers, or from an authentication provider and a relational database. You must use the IBM® Cognos® Software Development Kit for this method.

When using this method, you map the Tenant ID Mapping > Provider Class property in IBM Cognos Configuration to a custom Java™ class.

Before you begin

Before you can configure multitenancy by using this method, you must perform the following tasks:

  • Compile any required custom Java class files into JAR files and either place the files into the c10_location/webapps/p2pd/WEB-INF/lib directory with any associated files, or update the CLASSPATH environment variable to include the path to these files.
  • Implement the ITenantProvider interface by using the IBM Cognos Custom Authentication Provider and define the custom Java class in that interface. For example, the custom Java class name can be com.example.class. For more information, see the IBM Cognos Software Development Kit Custom Authentication Provider Developer Guide.
    Tip: IBM Cognos Custom Authentication Provider includes a sample custom Java class that you can use. You can find the sample files in the c10_location\sdk\java\AuthenticationProvider\MultiTenancyTenantProviderSample directory.

Procedure

  1. Open IBM Cognos Configuration.
  2. Choose whether to configure multitenancy settings globally for all namespaces, or for a specific namespace.
    • To configure multitenancy for all namespaces, in the Explorer window, for the Security category, click Authentication.
    • To configure multitenancy for one namespace, in the Explorer window, for the Security category, click Authentication. Then, click the namespace that you want to configure.
  3. In the Multitenancy group of properties, click the edit button for the Tenant ID Mapping property.
  4. In the Tenant ID Mapping window that is displayed, specify your mapping in the following way:
    1. For Type, select Provider Class.
    2. For Value, type the name of the custom Java class that is defined in the IBoundingSetProvider interface that was implemented using the IBM Cognos Custom Authentication Provider. For example, type com.example.class_name.
    3. Click OK.
  5. If you need to specify any custom property, in the Account Mappings (Advanced) group of properties, click the edit button in the Value column of the Custom property, and add the property name and value as required.
  6. Test your multitenancy configuration.
    1. Right-click either Authentication or the namespace (depending on your choice in step 2) and click Test.
    2. Log on using the credentials of the system administrator, and click OK.
    3. Click the Details button, and read the information that is displayed.

    If multitenancy is properly configured, your tenant ID is displayed in the details. If the tenant ID is not displayed, update and correct the values and test again.

  7. If the testing was successful, from the File menu, click Save.
  8. Restart the IBM Cognos service for the changes to take effect.