Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
afw_authorization.h
Go to the documentation of this file.
1 // See the 'COPYING' file in the project root for licensing information.
2 /*
3  * Adaptive Framework Authorization
4  *
5  * Copyright (c) 2010-2023 Clemson University
6  *
7  */
8 
9 #ifndef __AFW_AUTHORIZATION_H__
10 #define __AFW_AUTHORIZATION_H__
11 
12 #include "afw_interface.h"
13 
28 
32 
36 
40 
44 
48 
52 
53 
54 
62 
70 
78 
86 
94 
102 
110 
111 
119 
127 
135 
136 
137 
161 AFW_DECLARE(const afw_value_t *)
163  afw_boolean_t enforce,
164  const afw_value_t *request_id_value,
165  const afw_value_t *resource_id_value,
166  const afw_value_t *object_value,
167  const afw_value_t *action_id_value,
168  const afw_pool_t *p,
169  afw_xctx_t *xctx);
170 
171 
172 
186  const afw_utf8_t *authorization_handler_id,
187  afw_xctx_t *xctx);
188 
189 
195 AFW_DECLARE(void)
197  const afw_authorization_handler_t *instance,
198  afw_xctx_t *xctx);
199 
200 
201 AFW_END_DECLARES
202 
205 #endif /* __AFW_AUTHORIZATION_H__ */
#define AFW_BEGIN_DECLARES
#define AFW_DECLARE(type)
Declare a public afw function.
Interfaceafw_interface header.
AFW_DECLARE_CONST_DATA(afw_utf8_t) afw_s_200
afw_utf8_t for string 200
afw_authorization_action_id_read
actionId value read.
afw_authorization_action_id_create
actionId value create.
void afw_authorization_handler_release(const afw_authorization_handler_t *instance, afw_xctx_t *xctx)
Release reference to authorization handler.
afw_authorization_decision_id_notApplicable_value
AdaptiveAuthorizationResult decisionId value notApplicable.
const afw_authorization_handler_t * afw_authorization_handler_get_reference(const afw_utf8_t *authorization_handler_id, afw_xctx_t *xctx)
Get reference to authorization handler.
afw_authorization_decision_id_permit_value
AdaptiveAuthorizationResult decisionId value permit.
afw_authorization_action_id_query
actionId value retrieve.
afw_authorization_decision_id_indeterminateD_value
AdaptiveAuthorizationResult decisionId value indeterminateD.
afw_authorization_action_id_modify
actionId value modify.
const afw_value_t * afw_authorization_check(afw_boolean_t enforce, const afw_value_t *request_id_value, const afw_value_t *resource_id_value, const afw_value_t *object_value, const afw_value_t *action_id_value, const afw_pool_t *p, afw_xctx_t *xctx)
Perform authorization check.
afw_authorization_action_id_control
actionId value control.
afw_authorization_mode_id_core_value
AdaptiveAuthorizationMode core.
afw_authorization_decision_id_deny_value
AdaptiveAuthorizationResult decisionId value deny.
afw_authorization_decision_id_indeterminateP_value
AdaptiveAuthorizationResult decisionId value indeterminateP.
afw_authorization_action_id_delete
actionId value delete.
afw_authorization_mode_id_intermediate_value
AdaptiveAuthorizationMode intermediate.
afw_authorization_decision_id_indeterminate_value
AdaptiveAuthorizationResult decisionId value indeterminate.
afw_authorization_mode_id_user_value
AdaptiveAuthorizationMode user.
afw_authorization_decision_id_indeterminateDP_value
AdaptiveAuthorizationResult decisionId value indeterminateDP.
_Bool afw_boolean_t
Definition: afw_common.h:373
Interface afw_authorization_handler public struct.
Interface afw_pool public struct.
NFC normalized UTF-8 string.
Definition: afw_common.h:545
Interface afw_value public struct.
Interface afw_xctx public struct.