Obtain multiple authorization decisions
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.
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}
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.
Name | Type | Required | Description |
---|---|---|---|
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. |
Status | Meaning | Description | ||
---|---|---|---|---|
200 | OK | The request succeeded. | Headers | Schema |
400 | Bad Request | The request was invalid. Returned if no URIs are provided in the context to authorize. |