Libipa_hbac provides a mechanism to validate FreeIPA HBAC rules as well as evaluate whether they apply to a particular user login attempt.
More...
Libipa_hbac provides a mechanism to validate FreeIPA HBAC rules as well as evaluate whether they apply to a particular user login attempt.
Libipa_hbac is case-insensitive and compatible with UTF-8.
Error code returned by the evaluator.
Enumerator |
---|
HBAC_ERROR_UNKNOWN |
Unexpected error.
|
HBAC_SUCCESS |
Successful evaluation.
|
HBAC_ERROR_NOT_IMPLEMENTED |
Function is not yet implemented.
|
HBAC_ERROR_OUT_OF_MEMORY |
Ran out of memory during processing.
|
HBAC_ERROR_UNPARSEABLE_RULE |
Parse error while evaluating rule.
|
Result of HBAC evaluation.
Enumerator |
---|
HBAC_EVAL_ERROR |
An error occurred See the hbac_info for more details.
|
HBAC_EVAL_ALLOW |
Evaluation grants access.
|
HBAC_EVAL_DENY |
Evaluation denies access.
|
HBAC_EVAL_OOM |
Evaluation failed due to lack of memory hbac_info is not available.
|
Display error description.
- Parameters
-
- Returns
- English string describing the error
Evaluate an authorization request against a set of HBAC rules.
- Parameters
-
[in] | rules | A NULL-terminated list of rules to evaluate against |
[in] | hbac_req | A user authorization request |
[out] | info | Extended information (including the name of the rule that allowed access (or caused a parse error) |
- Returns
-
void hbac_free_info |
( |
struct hbac_info * |
info | ) |
|
Display result of hbac evaluation in human-readable form.
- Parameters
-
- Returns
- English string describing the evaluation result
bool hbac_rule_is_complete |
( |
struct hbac_rule * |
rule, |
|
|
uint32_t * |
missing_attrs |
|
) |
| |
Evaluate whether an HBAC rule contains all necessary elements.
- Parameters
-
- Returns
- True if the rule contains all mandatory attributes
- Note
- This function does not care if the rule is enabled or disabled