{
    "definitions": {
        "https:__kubernetesjsonschema_dev_master__defs_json_defs_io_k8s_api_authorization_v1_NonResourceAttributes": {
            "description": "NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface",
            "properties": {
                "path": {
                    "description": "Path is the URL path of the request",
                    "type": "string"
                },
                "verb": {
                    "description": "Verb is the standard HTTP verb",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "https:__kubernetesjsonschema_dev_master__defs_json_defs_io_k8s_api_authorization_v1_ResourceAttributes": {
            "description": "ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface",
            "properties": {
                "group": {
                    "description": "Group is the API Group of the Resource.  \"*\" means all.",
                    "type": "string"
                },
                "name": {
                    "description": "Name is the name of the resource being requested for a \"get\" or deleted for a \"delete\". \"\" (empty) means all.",
                    "type": "string"
                },
                "namespace": {
                    "description": "Namespace is the namespace of the action being requested.  Currently, there is no distinction between no namespace and all namespaces \"\" (empty) is defaulted for LocalSubjectAccessReviews \"\" (empty) is empty for cluster-scoped resources \"\" (empty) means \"all\" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview",
                    "type": "string"
                },
                "resource": {
                    "description": "Resource is one of the existing resource types.  \"*\" means all.",
                    "type": "string"
                },
                "subresource": {
                    "description": "Subresource is one of the existing resource types.  \"\" means none.",
                    "type": "string"
                },
                "verb": {
                    "description": "Verb is a kubernetes resource API verb, like: get, list, watch, create, update, delete, proxy.  \"*\" means all.",
                    "type": "string"
                },
                "version": {
                    "description": "Version is the API Version of the Resource.  \"*\" means all.",
                    "type": "string"
                }
            },
            "type": "object"
        }
    },
    "description": "SubjectAccessReviewSpec is a description of the access request.  Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set",
    "properties": {
        "extra": {
            "additionalProperties": {
                "items": {
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "type": [
                    "array",
                    "null"
                ]
            },
            "description": "Extra corresponds to the user.Info.GetExtra() method from the authenticator.  Since that is input to the authorizer it needs a reflection here.",
            "type": [
                "object",
                "null"
            ]
        },
        "groups": {
            "description": "Groups is the groups you're testing for.",
            "items": {
                "type": [
                    "string",
                    "null"
                ]
            },
            "type": [
                "array",
                "null"
            ]
        },
        "nonResourceAttributes": {
            "$ref": "#/definitions/https:__kubernetesjsonschema_dev_master__defs_json_defs_io_k8s_api_authorization_v1_NonResourceAttributes",
            "description": "NonResourceAttributes describes information for a non-resource access request"
        },
        "resourceAttributes": {
            "$ref": "#/definitions/https:__kubernetesjsonschema_dev_master__defs_json_defs_io_k8s_api_authorization_v1_ResourceAttributes",
            "description": "ResourceAuthorizationAttributes describes information for a resource access request"
        },
        "uid": {
            "description": "UID information about the requesting user.",
            "type": [
                "string",
                "null"
            ]
        },
        "user": {
            "description": "User is the user you're testing for. If you specify \"User\" but not \"Groups\", then is it interpreted as \"What if User were not a member of any groups",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "type": "object"
}