All docs This doc

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: https://support.wso2.com/jira/browse/WSODOCINTERNAL-911

...

  1. To issue only sandbox keys when creating production keys is deferred until testing is complete.
  2. To restrict untrusted applications from creating production keys. You allow only the creation of sandbox keys.


To make API subscribers go through an approval process before creating any type of access token.

Tip

Before you begin, if you have changed the API Manager's default user and role, make sure you do the following changes:

  1. Change the credentials of the workflow configurations in the registry resource _system/governance/apimgt/applicationdata/workflow-extensions.xml.
    a. Login to the Management console of WSO2 API Manager in https://localhost:9443/carbon.
    b. Click on browse under Resources in left Navigation under Main tab.
    c. Go to /_system/governance/apimgt/applicationdata/workflow-extensions.xml location in registry browser and open the workflow-extensions.xml clicking Edit as text.
    Image Modified

    d. Uncomment the following two sections and change the credentials of API Manager's default user credetials you have given.

    Warning

    This configuration is provided assuming that WSO2 BPS is running with offset 2. If you are running WSO2 BPS in a different offset change the port of serviceEndpoint properties in following configuration according to the changed port offset.

    Code Block
    <ProductionApplicationRegistration executor="org.wso2.carbon.apimgt.impl.workflow.ApplicationRegistrationWSWorkflowExecutor">
        <Property name="serviceEndpoint">http://localhost:9765/services/ApplicationRegistrationWorkFlowProcess/</Property>
        <Property name="username">admin</Property>
        <Property name="password">admin</Property>
        <Property name="callbackURL">https://localhost:8248/services/WorkflowCallbackService</Property>
    </ProductionApplicationRegistration>
    
    <SandboxApplicationRegistration executor="org.wso2.carbon.apimgt.impl.workflow.ApplicationRegistrationWSWorkflowExecutor">
        <Property name="serviceEndpoint">http://localhost:9765/services/ApplicationRegistrationWorkFlowProcess/</Property>
        <Property name="username">admin</Property>
        <Property name="password">admin</Property>
        <Property name="callbackURL">https://localhost:8248/services/WorkflowCallbackService</Property>
    </SandboxApplicationRegistration>
    Note

    Make sure to comment out the existing ProductionApplicationRegistration and SandboxApplicationRegistration executors as shown below.

    Code Block
    <!--ProductionApplicationRegistration executor="org.wso2.carbon.apimgt.impl.workflow.ApplicationRegistrationSimpleWorkflowExecutor"/-->
    <!--SandboxApplicationRegistration executor="org.wso2.carbon.apimgt.impl.workflow.ApplicationRegistrationSimpleWorkflowExecutor"/-->
  2. The database that has the API Manager user permissions to BPS.
    In this step you need to share the user store database in WSO2 API Manager with WSO2 BPS.

    a. Copy the following datasource configuration in <API-M_HOME>/repository/conf/datasources/master-datasources.xml :

    Code Block
    <datasource> <name>WSO2UM_DB</name>
     <description>The datasource used by user manager</description>
     <jndiConfig>
       <name>jdbc/WSO2UM_DB</name>
     </jndiConfig>
     <definition type="RDBMS">
       <configuration>
         <url>jdbc:mysql://userdb.mysql-wso2.com:3306/userdb?autoReconnect=true</url>
         <username>user</username>
         <password>password</password>
         <driverClassName>com.mysql.jdbc.Driver</driverClassName>
         <maxActive>50</maxActive>
         <maxWait>60000</maxWait>
         <testOnBorrow>true</testOnBorrow>
         <validationQuery>SELECT 1</validationQuery>
         <validationInterval>30000</validationInterval>
       </configuration>
     </definition>
    </datasource>
    Note

    We are using MySQL to configure the datasources in this documentation. You can configure this according to the database you are using. Refer Setting up the Physical Database for more information.

    b. Change the datasource to point the WSO2UM_DB by changing the realm configuration in <API-M_HOME>/repository/conf/user-mgt.xml as shown below.

    Code Block
    <UserManager>
        <Realm>
            <Configuration>
                ....
                <Property name="dataSource">jdbc/WSO2UM_DB</Property>
            </Configuration>
                ....
        <Realm>
    <UserManager>

    c. Do the configuration described in a and b in <BPS_HOME>/repository/conf/datasources/master-datasources.xml and <BPS_HOME>/repository/conf/user-mgt.xml respectively.

  3. Share any LDAPs, if exist.
  4. Unzip the  <API-M>/business-processes/application-registration/HumanTask/ApplicationRegistrationTask-1.0.0.zip  file, update the role as follows in the  ApplicationRegsitrationTask.ht  file, and ZIP the  ApplicationRegistrationTask-1.0.0 folder.
Code Block
titleFormat
<htd:argument name="role">
    [new-role-name]
</htd:argument>

...