## Provided Capabilities (1)

Name | Dynamic | Other provider points
--- | --- | ---
org.wildfly.security.policy | false | none

## Attributes (3)

- custom-policy - A custom policy provider definition.

  Type | OBJECT
  Is the attribute nillable? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | no-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "OBJECT"
          },
          "description" : "A custom policy provider definition.",
          "expressions-allowed" : false,
          "required" : true,
          "nillable" : true,
          "alternatives" : ["jacc-policy"],
          "stability" : "default",
          "value-type" : {
              "class-name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of a java.security.Policy implementation referencing a policy provider.",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : false,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "module" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of the module to load the provider from.",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              }
          },
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "no-services",
          "capability-reference" : null
      }

- default-policy - Not used.
  Deprecated Since 1.2.0
  The 'default-policy' attribute is ignored, as a policy resource should be configured with only one policy.

  Type | STRING
  Is the attribute nillable? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | no-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "Not used.",
          "expressions-allowed" : false,
          "required" : false,
          "nillable" : true,
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "deprecated" : {
              "since" : "1.2.0",
              "reason" : "The 'default-policy' attribute is ignored, as a policy resource should be configured with only one policy."
          },
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "no-services",
          "capability-reference" : null
      }

- jacc-policy - A policy provider definition that sets up Jakarta Authorization and related services.

  Type | OBJECT
  Is the attribute nillable? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | jvm
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "OBJECT"
          },
          "description" : "A policy provider definition that sets up Jakarta Authorization and related services.",
          "expressions-allowed" : false,
          "required" : true,
          "nillable" : true,
          "alternatives" : ["custom-policy"],
          "stability" : "default",
          "value-type" : {
              "policy" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of a java.security.Policy implementation referencing a policy provider.",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "default" : "org.wildfly.security.authz.jacc.JaccDelegatingPolicy",
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "configuration-factory" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of a javax.security.jacc.PolicyConfigurationFactory implementation referencing a policy configuration factory provider.",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "default" : "org.wildfly.security.authz.jacc.ElytronPolicyConfigurationFactory",
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              },
              "module" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "The name of the module to load the provider from.",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              }
          },
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "jvm",
          "capability-reference" : null
      }

## Operations (2)

- add - Add operation for adding a policy provider.

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  custom-policy | OBJECT | true | false |  | A custom policy provider definition.
  default-policy | STRING | false | false |  | Not used.
  jacc-policy | OBJECT | true | false |  | A policy provider definition that sets up Jakarta Authorization and related services.

  Raw DMR model |
      {
          "operation-name" : "add",
          "description" : "Add operation for adding a policy provider.",
          "request-properties" : {
              "custom-policy" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "OBJECT"
                  },
                  "description" : "A custom policy provider definition.",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : true,
                  "alternatives" : ["jacc-policy"],
                  "stability" : "default",
                  "value-type" : {
                      "class-name" : {
                          "type" : {
                              "TYPE_MODEL_VALUE" : "STRING"
                          },
                          "description" : "The name of a java.security.Policy implementation referencing a policy provider.",
                          "expressions-allowed" : false,
                          "required" : true,
                          "nillable" : false,
                          "min-length" : 1,
                          "max-length" : 2147483647,
                          "stability" : "default"
                      },
                      "module" : {
                          "type" : {
                              "TYPE_MODEL_VALUE" : "STRING"
                          },
                          "description" : "The name of the module to load the provider from.",
                          "expressions-allowed" : false,
                          "required" : false,
                          "nillable" : true,
                          "min-length" : 1,
                          "max-length" : 2147483647,
                          "stability" : "default"
                      }
                  }
              },
              "default-policy" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Not used.",
                  "expressions-allowed" : false,
                  "required" : false,
                  "nillable" : true,
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default",
                  "deprecated" : {
                      "since" : "1.2.0",
                      "reason" : "The 'default-policy' attribute is ignored, as a policy resource should be configured with only one policy."
                  }
              },
              "jacc-policy" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "OBJECT"
                  },
                  "description" : "A policy provider definition that sets up Jakarta Authorization and related services.",
                  "expressions-allowed" : false,
                  "required" : true,
                  "nillable" : true,
                  "alternatives" : ["custom-policy"],
                  "stability" : "default",
                  "value-type" : {
                      "policy" : {
                          "type" : {
                              "TYPE_MODEL_VALUE" : "STRING"
                          },
                          "description" : "The name of a java.security.Policy implementation referencing a policy provider.",
                          "expressions-allowed" : false,
                          "required" : false,
                          "nillable" : true,
                          "default" : "org.wildfly.security.authz.jacc.JaccDelegatingPolicy",
                          "min-length" : 1,
                          "max-length" : 2147483647,
                          "stability" : "default"
                      },
                      "configuration-factory" : {
                          "type" : {
                              "TYPE_MODEL_VALUE" : "STRING"
                          },
                          "description" : "The name of a javax.security.jacc.PolicyConfigurationFactory implementation referencing a policy configuration factory provider.",
                          "expressions-allowed" : false,
                          "required" : false,
                          "nillable" : true,
                          "default" : "org.wildfly.security.authz.jacc.ElytronPolicyConfigurationFactory",
                          "min-length" : 1,
                          "max-length" : 2147483647,
                          "stability" : "default"
                      },
                      "module" : {
                          "type" : {
                              "TYPE_MODEL_VALUE" : "STRING"
                          },
                          "description" : "The name of the module to load the provider from.",
                          "expressions-allowed" : false,
                          "required" : false,
                          "nillable" : true,
                          "min-length" : 1,
                          "max-length" : 2147483647,
                          "stability" : "default"
                      }
                  }
              }
          },
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "all-services",
          "runtime-only" : false
      }

- remove - Remove operation for removing a policy provider.

  Raw DMR model |
      {
          "operation-name" : "remove",
          "description" : "Remove operation for removing a policy provider.",
          "request-properties" : {},
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "all-services",
          "runtime-only" : false
      }