User permissions

This page describes which user permissions, managed by Caplin’s Permissioning Auth Module (PAM), affect the user interface of FX Mobile.

PAM is a Liberator auth module supplied as part of the Caplin Permissioning Service. For more information on PAM, including descriptions of the terminology used on this page, see Permissioning in the Liberator documentation.

Permission to submit FX trades

To permit a user to submit FX trades, grant them permission to perfrom the FX-TRADE action under the FX_TRADE namespace. The FX-Trade permission does not affect the display of blotters.

FX Mobile hides the Trade tab for a currency pair if the user does not have permission to submit FX trades.

The following example shows how to use the Java Permissioning API to grant permission to submit FX trades:

Permission
Permission namespace Action Product Authorisation

FX_TRADE

FX-TRADE

.*

ALLOW

Implementation (Caplin Java Permissioning API)
user.applyPermission(
  Collections.singleton(".*"),      // Product set
  "FX_TRADE",                       // Permission namespace
  "FX-TRADE",                       // Action
  Authorization.ALLOW               // Authorisation
);

Permissions to submit FX orders

To permit a user to submit FX orders:

  • Grant them permission to perform the FX-ORDER action under the FX_ORDER namespace.

  • Grant them permission to perform the FX-TRADE action under the FX_TRADE namespace.

The user must have both permissions assigned to them to submit FX orders. The FX-ORDER permission does not affect the display of blotters.

FX Mobile hides the Order tab for a currency pair if the user does not have permission to submit FX orders or the user does not have permission to submit FX trades.

The following example shows how to use the Java Permissioning API to grant permission to submit FX orders:

Permission
Permission namespace Action Product Authorisation

FX_ORDER

FX-ORDER

.*

ALLOW

Implementation (Caplin Java Permissioning API)
user.applyPermission(
  Collections.singleton(".*"),      // Product set
  "FX_ORDER",                       // Permission namespace
  "FX-ORDER",                       // Action
  Authorization.ALLOW               // Authorisation
);

Permission to use a currency pair

The permissions you grant to a user under the FX_CURRENCY_PAIR_TRADE_LIST namespace determine which currency pairs the user can trade and submit orders in. FX Mobile displays the selection of currency pairs to the user accordingly.

The following example shows how to use the Java Permissioning API to grant permission to trade in GBPUSD and EURUSD:

Permissions
Permission namespace Action Product Authorisation

FX_CURRENCY_PAIR_TRADE_LIST

GBPUSD

.*

ALLOW

FX_CURRENCY_PAIR_TRADE_LIST

EURUSD

.*

ALLOW

Implementation (Caplin Java Permissioning API)
user.permit(
  Collections.singleton(".*"),      // Product set
  "FX_CURRENCY_PAIR_TRADE_LIST",    // Permission namespace
  "GBPUSD",                         // Action
  "EURUSD"                          // Action
);

Permission to use a tenor

To dictate which tenors a user’s trade can settle on, select the required tenors under the FX_TENORS_LIST namespace. FX Mobile displays the selection of tenors to the user accordingly.

The following example shows how to use the Java Permissioning API to grant permission to use tenors SPOT, 1M, and 3M for all currency pairs, and grant permission to use 6M for EURUSD:

Permissions
Permission namespace Action Product Authorisation

FX_TENOR_LIST

SPOT

.*

ALLOW

FX_TENOR_LIST

1M

.*

ALLOW

FX_TENOR_LIST

3M

.*

ALLOW

FX_TENOR_LIST

6M

EURUSD

ALLOW

Implementation (Caplin Java Permissioning API)
user.permit(
  Collections.singleton(".*"),      // Product set
  "FX_TENOR_LIST",                  // Permission namespace
  "SPOT",                           // Action
  "1M",                             // Action
  "3M"                              // Action
);
user.permit(
  Collections.singleton("EURUSD"),  // Product set
  "FX_TENOR_LIST",                  // Permission namespace
  "6M"                              // Action
);

Permissions to trade on an account

To dictate which accounts a user can trade on, select the required accounts under the ACCOUNT_LIST namespace. FX Mobile displays the selection of accounts to the user accordingly.

Accounts are specified in the format: display_name|account_id.

The following example shows how to use the Java Permissioning API to permit trading on account 10000001 (display name 'First Account'):

Permission
Permission namespace Action Product Authorisation

FX_ACCOUNT_LIST

First Account|10000001

.*

ALLOW

Implementation (Caplin Java Permissioning API)
user.applyPermission(
  Collections.singleton(".*"),      // Product set
  "FX_ACCOUNT_LIST",                // Permission namespace
  "First Account|10000001",         // Action
  Authorization.ALLOW               // Authorisation
);

See also: