## Provided Capabilities (2)

Name | Dynamic | Other provider points
--- | --- | ---
org.wildfly.security.principal-transformer | true | /subsystem=elytron/constant-principal-decoder=* /subsystem=elytron/chained-principal-transformer=* /subsystem=elytron/custom-principal-transformer=* /subsystem=elytron/aggregate-principal-transformer=* /subsystem=elytron/regex-principal-transformer=* /subsystem=elytron/constant-principal-transformer=* /subsystem=elytron/case-principal-transformer=* /subsystem=elytron/concatenating-principal-decoder=* /subsystem=elytron/regex-validating-principal-transformer=*
org.wildfly.security.principal-decoder | true | /subsystem=elytron/constant-principal-decoder=* /subsystem=elytron/aggregate-principal-decoder=* /subsystem=elytron/concatenating-principal-decoder=* /subsystem=elytron/custom-principal-decoder=*

## Attributes (9)

- attribute-name - The name of the X.500 attribute to map (can be defined using OID instead)

  Type | STRING
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "The name of the X.500 attribute to map (can be defined using OID instead)",
          "expressions-allowed" : true,
          "required" : true,
          "nillable" : true,
          "alternatives" : ["oid"],
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- convert - When set to 'true', if the Principal is not already an X500Principal conversion will be attempted

  Type | BOOLEAN
  Default Value | false
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "BOOLEAN"
          },
          "description" : "When set to 'true', if the Principal is not already an X500Principal conversion will be attempted",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : false,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- joiner - The joining string

  Type | STRING
  Default Value | .
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "The joining string",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : ".",
          "min-length" : 0,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- maximum-segments - The maximum number of occurrences of the attribute to map

  Type | INT
  Default Value | 2147483647
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "INT"
          },
          "description" : "The maximum number of occurrences of the attribute to map",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : 2147483647,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- oid - The OID of the X.500 attribute to map (can be defined using attribute name instead)

  Type | STRING
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "The OID of the X.500 attribute to map (can be defined using attribute name instead)",
          "expressions-allowed" : true,
          "required" : true,
          "nillable" : true,
          "alternatives" : ["attribute-name"],
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- required-attributes - The attributes names of the attributes that must be present in the principal

  Type | LIST
  Is the attribute nillable? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "LIST"
          },
          "description" : "The attributes names of the attributes that must be present in the principal",
          "expressions-allowed" : false,
          "required" : false,
          "nillable" : true,
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "value-type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- required-oids - The OIDs of the attributes that must be present in the principal

  Type | LIST
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "LIST"
          },
          "description" : "The OIDs of the attributes that must be present in the principal",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "value-type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- reverse - When set to 'true', the attribute values will be processed and returned in reverse order

  Type | BOOLEAN
  Default Value | false
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "BOOLEAN"
          },
          "description" : "When set to 'true', the attribute values will be processed and returned in reverse order",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : false,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

- start-segment - The 0-based starting occurrence of the attribute to map

  Type | INT
  Default Value | 0
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | all-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "INT"
          },
          "description" : "The 0-based starting occurrence of the attribute to map",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : 0,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "all-services",
          "capability-reference" : null
      }

## Operations (2)

- add - Add operation for the principal decoder

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  attribute-name | STRING | true | true |  | The name of the X.500 attribute to map (can be defined using OID instead)
  convert | BOOLEAN | false | true | false | When set to 'true', if the Principal is not already an X500Principal conversion will be attempted
  joiner | STRING | false | true | . | The joining string
  maximum-segments | INT | false | true | 2147483647 | The maximum number of occurrences of the attribute to map
  oid | STRING | true | true |  | The OID of the X.500 attribute to map (can be defined using attribute name instead)
  required-attributes | LIST | false | false |  | The attributes names of the attributes that must be present in the principal
  required-oids | LIST | false | true |  | The OIDs of the attributes that must be present in the principal
  reverse | BOOLEAN | false | true | false | When set to 'true', the attribute values will be processed and returned in reverse order
  start-segment | INT | false | true | 0 | The 0-based starting occurrence of the attribute to map

  Raw DMR model |
      {
          "operation-name" : "add",
          "description" : "Add operation for the principal decoder",
          "request-properties" : {
              "attribute-name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of the X.500 attribute to map (can be defined using OID instead)",
                  "expressions-allowed" : true,
                  "required" : true,
                  "nillable" : true,
                  "alternatives" : ["oid"],
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "convert" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "When set to 'true', if the Principal is not already an X500Principal conversion will be attempted",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : false,
                  "stability" : "default"
              },
              "joiner" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The joining string",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : ".",
                  "min-length" : 0,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "maximum-segments" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "INT"
                  },
                  "description" : "The maximum number of occurrences of the attribute to map",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : 2147483647,
                  "stability" : "default"
              },
              "oid" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The OID of the X.500 attribute to map (can be defined using attribute name instead)",
                  "expressions-allowed" : true,
                  "required" : true,
                  "nillable" : true,
                  "alternatives" : ["attribute-name"],
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "required-attributes" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "LIST"
                  },
                  "description" : "The attributes names of the attributes that must be present in the principal",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default",
                  "value-type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  }
              },
              "required-oids" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "LIST"
                  },
                  "description" : "The OIDs of the attributes that must be present in the principal",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default",
                  "value-type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  }
              },
              "reverse" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "When set to 'true', the attribute values will be processed and returned in reverse order",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : false,
                  "stability" : "default"
              },
              "start-segment" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "INT"
                  },
                  "description" : "The 0-based starting occurrence of the attribute to map",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : 0,
                  "stability" : "default"
              }
          },
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "resource-services",
          "runtime-only" : false
      }

- remove - Remove operation for the principal decoder

  Raw DMR model |
      {
          "operation-name" : "remove",
          "description" : "Remove operation for the principal decoder",
          "request-properties" : {},
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "resource-services",
          "runtime-only" : false
      }