Module Values.IsAuthorizedWithTokenOutputSource

Makes an authorization decision about a service request described in the parameters. The principal in this request comes from an external identity source in the form of an identity token formatted as a JSON web token (JWT). The information in the parameters can also define additional context that Verified Permissions can include in the evaluation. The request is evaluated against all matching policies in the specified policy store. The result of the decision is either Allow or Deny, along with a list of the policies that resulted in the decision. Verified Permissions validates each token that is specified in a request by checking its expiration date and its signature. Tokens from an identity source user continue to be usable until they expire. Token revocation and resource deletion have no effect on the validity of a token in your policy store

Sourcetype nonrec t = {
  1. decision : Decision.t option;
    (*

    An authorization decision that indicates if the authorization request should be allowed or denied.

    *)
  2. determiningPolicies : DeterminingPolicyList.t option;
    (*

    The list of determining policies used to make the authorization decision. For example, if there are multiple matching policies, where at least one is a forbid policy, then because forbid always overrides permit the forbid policies are the determining policies. If all matching policies are permit policies, then those policies are the determining policies. When no policies match and the response is the default DENY, there are no determining policies.

    *)
  3. errors : EvaluationErrorList.t option;
    (*

    Errors that occurred while making an authorization decision. For example, a policy references an entity or entity attribute that does not exist in the slice.

    *)
  4. principal : EntityIdentifier.t option;
    (*

    The identifier of the principal in the ID or access token.

    *)
}
Sourcetype nonrec error = [
  1. | `AccessDeniedException of AccessDeniedException.t
  2. | `InternalServerException of InternalServerException.t
  3. | `ResourceNotFoundException of ResourceNotFoundException.t
  4. | `ThrottlingException of ThrottlingException.t
  5. | `ValidationException of ValidationException.t
  6. | `Unknown_operation_error of string * string option
]
Sourceval make : ?decision:??? -> ?determiningPolicies:??? -> ?errors:??? -> ?principal:??? -> unit -> t
Sourceval error_of_json : string -> Yojson.Safe.t -> [> `AccessDeniedException of AccessDeniedException.t | `InternalServerException of InternalServerException.t | `ResourceNotFoundException of ResourceNotFoundException.t | `ThrottlingException of ThrottlingException.t | `Unknown_operation_error of string * string option | `ValidationException of ValidationException.t ]
Sourceval error_of_xml : string -> Awso.Xml.t -> [> `AccessDeniedException of AccessDeniedException.t | `InternalServerException of InternalServerException.t | `ResourceNotFoundException of ResourceNotFoundException.t | `ThrottlingException of ThrottlingException.t | `Unknown_operation_error of string * string option | `ValidationException of ValidationException.t ]
Sourceval error_to_json : error -> Yojson.Safe.t
Sourceval to_value : t -> [> `Structure of (string * [> `Enum of string | `List of [> `Structure of (string * [> `String of PolicyId.t ]) list ] list | `Structure of (string * [> `String of EntityType.t ]) list ]) list ]
Sourceval to_query : t -> Awso.Client.Query.t
Sourceval of_xml : Awso.Xml.t -> t
Sourceval of_string : string -> t
Sourceval of_json : Yojson.Safe.t -> t
Sourceval to_json : t -> Yojson.Safe.t