Creating and Granting Customer-Defined Masks

Business Administrators can create masks, for example to adapt the DEFAULT mask to a specific role such as a Designer.

You must restart the application server after associating a mask with a P&O object (for example, mask::MaskName with context Designer.Company Name.Standard).

This involves two steps:

  • Creating the new mask
  • Creating commands used for granting mask access

Business Administrators use MQL to create the commands and grant the masks.

This task shows you how to:

Create User-Defined Masks

This procedure shows you how to adapt a default mask definition to define a new mask. As an example, the PLMProductDS.metadata file derives from PLMCORE metadata, and you want to adapt the DEFAULT mask definition of the PLMProductDS modeler for designers to create a Designer mask.

If you create a custom metadata file, use the VPLMPosMaskGenerator tool to generate the corresponding mask file. For more information, see VPLMPosMaskGenerator.

  1. Modify the mask file.
    1. Copy PLMProductDS.mask file from:

      <ENOVIAPlatformServer_WEB-INF>/classes/vplm/mask/DEFAULT

      to : <MyCustomization_root>/vplm/mask/Designer directory

      If <MyCustomization_root> is not <ENOVIAPlatformServer_WEB-INF>/classes, this directory must be specified to the mask compiler using the -addpath option.

    2. Edit the PLMProductDS.mask file to meet your requirements:

      • Modify accesses
      • Replace MASK DEFAULT by MASK Designer

  2. Compile the mask file:

    PLMPosMaskCompiler -m Designer -d /tmp/masks -html /tmp/masks/html -addpath <MyCustomization_root>
    • The Designer.SecurityMask file is generated in directory /tmp/masks, as well as the result.log file.
    • Html files are generated in /tmp/masks/html.

    The modelers index file is_index.html and lists all processed modelers and the number of errors.

  3. Deploy the mask file.

    With write access on the server runtime view, copy the Designer.SecurityMask file from /tmp/masks to:

    Tomcat: <apache_root>/webapps/ematrix/WEB-INF/classes/vplm/mask

Granting the Masks Using MQL

To grant a mask to a person or organization object, you must create a command prefixed by mask::. This example uses MQL to create the command and assign the mask. See the MQL Concepts for more detailed instructions on creating commands.

  1. In an MQL window, create the command (using the Designer example details):

    add command mask::Designer
    hidden
    user ctx::Designer.MyCompany.Engineering;

  2. Modify the command to remove the all access and add the required access.

    modify command mask::Designer
    remove user all
    add user ctx::Designer.MyCompany.Engineering;

    The keyword user used in the modify command refers to the 3DEXPERIENCE user.