Obtain multiple authorization decisions

post/decisions
Internal-Use Only

Determines which actions a specified principal is authorized to perform in a specified context. Each requested action is evaluated against its associated permission. Granted and prohibited actions are returned in separate lists.

Request Samples

1

Response Samples

1{
2 "version": 2,
3 "grantedLinks": [
4 {
5 "method": "GET",
6 "rel": "fakeRel",
7 "href": "/something",
8 "uri": "/something"
9 },
10 {
11 "method": "GET",
12 "rel": "fakeRel",
13 "href": "/test123/123456",
14 "uri": "/test123/123456"
15 },
16 {
17 "method": "GET",
18 "rel": "fakeRel",
19 "href": "/test/123",
20 "uri": "/test/123"
21 },
22 {
23 "method": "GET",
24 "rel": "fakeRel",
25 "href": "/xyz/abc/something",
26 "uri": "/xyz/abc/something"
27 }
28 ],
29 "prohibitedLinks": []
30}

Request Body

The requested actions and contextual details. Bulk information must be included as a map of permissions to arrays of links. These maps must be provided in the bulkLinks or parameterizedLinks members as appropriate for the request. Use of bulkLinks and parameterizedLinks in a single request is supported.

Contextual information about an action that a principal is attempting, including one or more links that should be authorized against a supplied permission. Represented by media type application/vnd.sas.authorization.bulk.context+json.

NameTypeRequiredDescription
bulkLinks
Permissions to Links
false

A map of permissions to link arrays. The keys of this map are the permissions that the link values are authorized for.

parameterizedLinks
Permissions to Parameterized Links
false

A map of permissions to parameterized link arrays. The keys of this map are the permissions that the link values are authorized for. During authorization of the link the parameters will be added to the list of parameters supplied on the context. The parameters are used in authorization conditional expressions. If there is a conflict the parameters specified for the link will override.

request
Authorization Context Request
false

A description of the HTTP request that is associated with an authorization request.

principals
array [Principal]
false

The set of principals representing the actor performing the action.

permission
string
false

A type of access.

Allowed values:
addcreatedeletereadremovesecureupdate
parameters
object
false

A map of keys to objects that represent the parameters and return object of a method being invoked. This can be null or empty.

matchParams
boolean
false

Whether the authorization service should strictly match query parameters in this context against a rule.

Default:
false
eachNamed
object
false

Map of parameter names to a new name that should be used in rule condition evaluation for collections. For example, if a parameter being used for evaluation is a collection named 'items', then eachNamed can map 'items' to 'item' so that item in the collection can be evaluated independently against a rule that references the '#item' variable.

version
integer<int32>
false

The authorization context's media type version. The version described here is version 1.

Responses

StatusMeaningDescription
200OKThe request succeeded.HeadersSchema
400Bad RequestThe request was invalid. Returned if no URIs are provided in the context to authorize.