JFrog Artifactory · Schema

Artifactory Permission Target

Schema for JFrog Artifactory permission targets (V2), defining access control rules for repositories and builds. Permission targets map users and groups to specific permissions on repository and build resources.

ArtifactsDevOpsCI/CDDocker RegistryMavenPackage ManagementRepository

Properties

Name Type Description
name string Unique name for the permission target.
repo object Repository permissions section defining access to repository artifacts.
build object Build permissions section defining access to build information.
View JSON Schema on GitHub

JSON Schema

artifactory-permission-target.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://jfrog.com/schemas/artifactory-permission-target.json",
  "title": "Artifactory Permission Target",
  "description": "Schema for JFrog Artifactory permission targets (V2), defining access control rules for repositories and builds. Permission targets map users and groups to specific permissions on repository and build resources.",
  "type": "object",
  "required": ["name"],
  "properties": {
    "name": {
      "type": "string",
      "description": "Unique name for the permission target.",
      "examples": ["release-deployers", "dev-team-access"]
    },
    "repo": {
      "$ref": "#/$defs/permissionSection",
      "description": "Repository permissions section defining access to repository artifacts."
    },
    "build": {
      "$ref": "#/$defs/permissionSection",
      "description": "Build permissions section defining access to build information."
    }
  },
  "$defs": {
    "permissionSection": {
      "type": "object",
      "description": "A permission section for either repositories or builds.",
      "properties": {
        "repositories": {
          "type": "array",
          "description": "List of repository or build repository keys this permission applies to. Use 'ANY' for all repositories, 'ANY LOCAL' for all local repos, 'ANY REMOTE' for all remote repos.",
          "items": {
            "type": "string"
          },
          "examples": [
            ["libs-release-local", "libs-snapshot-local"],
            ["ANY"],
            ["ANY LOCAL"]
          ]
        },
        "actions": {
          "type": "object",
          "description": "Permission actions mapped to users and groups.",
          "properties": {
            "users": {
              "type": "object",
              "description": "Map of usernames to their permission actions.",
              "additionalProperties": {
                "type": "array",
                "items": {
                  "$ref": "#/$defs/permissionAction"
                }
              },
              "examples": [
                {
                  "admin-user": ["manage", "read", "write", "annotate", "delete"],
                  "deployer": ["read", "write", "annotate"]
                }
              ]
            },
            "groups": {
              "type": "object",
              "description": "Map of group names to their permission actions.",
              "additionalProperties": {
                "type": "array",
                "items": {
                  "$ref": "#/$defs/permissionAction"
                }
              },
              "examples": [
                {
                  "dev-team": ["read", "write", "annotate"],
                  "readers": ["read"]
                }
              ]
            }
          }
        },
        "includePatterns": {
          "type": "array",
          "description": "Artifact path patterns to include in this permission scope.",
          "items": {
            "type": "string"
          },
          "default": ["**"],
          "examples": [["**"], ["com/example/**"]]
        },
        "excludePatterns": {
          "type": "array",
          "description": "Artifact path patterns to exclude from this permission scope.",
          "items": {
            "type": "string"
          },
          "default": [],
          "examples": [[], ["com/internal/**"]]
        }
      }
    },
    "permissionAction": {
      "type": "string",
      "description": "A permission action that can be granted to users or groups.",
      "enum": [
        "read",
        "write",
        "annotate",
        "delete",
        "manage",
        "managedXrayMeta",
        "distribute"
      ]
    }
  }
}