| Lasso Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
enum LassoAssertionQueryRequestType; struct LassoAssertionQuery; LassoAssertionQuery * lasso_assertion_query_new (LassoServer *server); void lasso_assertion_query_destroy (LassoAssertionQuery *assertion_query); lasso_error_t lasso_assertion_query_init_request (LassoAssertionQuery *assertion_query,char *remote_provider_id,LassoHttpMethod http_method,LassoAssertionQueryRequestType query_request_type); lasso_error_t lasso_assertion_query_validate_request (LassoAssertionQuery *assertion_query); lasso_error_t lasso_assertion_query_build_request_msg (LassoAssertionQuery *assertion_query); lasso_error_t lasso_assertion_query_process_request_msg (LassoAssertionQuery *assertion_query,gchar *request_msg); lasso_error_t lasso_assertion_query_build_response_msg (LassoAssertionQuery *assertion_query); lasso_error_t lasso_assertion_query_process_response_msg (LassoAssertionQuery *assertion_query,gchar *response_msg); lasso_error_t lasso_assertion_query_add_attribute_request (LassoAssertionQuery *assertion_query,char *format,char *name); LassoAssertionQueryRequestType lasso_assertion_query_get_request_type (LassoAssertionQuery *assertion_query);
typedef enum {
LASSO_ASSERTION_QUERY_REQUEST_TYPE_UNSET = 0,
LASSO_ASSERTION_QUERY_REQUEST_TYPE_ASSERTION_ID,
LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHN,
LASSO_ASSERTION_QUERY_REQUEST_TYPE_ATTRIBUTE,
LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHZ_DECISION,
LASSO_ASSERTION_QUERY_REQUEST_TYPE_LAST
} LassoAssertionQueryRequestType;
Enumerate the existing kind of AssertionQuery requests.
| the unknown value | |
| an AssertionID request, to retrieve an assertion by its ID. | |
| an AuthnQuery request, which is used to request existing authentication assertions about a given subject from an Authentication Authority | |
| an AttributeQuery, which is used to retrieve attribute an a principal. | |
| an AuthzDecisionQuery, which is used to request authorisation to let a principal access a certain resource. | |
LassoAssertionQuery * lasso_assertion_query_new (LassoServer *server);
Creates a new LassoAssertionQuery.
|
the LassoServer |
Returns : |
a newly created LassoAssertionQuery object; or NULL if an error occured |
void lasso_assertion_query_destroy (LassoAssertionQuery *assertion_query);
Destroys a LassoAssertionQuery object.
|
a LassoAssertionQuery |
lasso_error_t lasso_assertion_query_init_request (LassoAssertionQuery *assertion_query,char *remote_provider_id,LassoHttpMethod http_method,LassoAssertionQueryRequestType query_request_type);
Initializes a new Assertion Query Request. For the AssertionID request type, the remote_provider_id is mandatory, for all other kind of request it is optional if we can find a provider supporting the associated role, i.e. IDP; authentication, attribute and authorization authority.
|
a LassoAssertionQuery |
|
the providerID of the remote provider. [allow-none] |
|
if set, then it get the protocol profile in metadata corresponding of this HTTP request method. |
|
the type of request. |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_assertion_query_validate_request
(LassoAssertionQuery *assertion_query);
Processes a Assertion query or request; caller must add assertions to the response afterwards.
|
a LassoAssertionQuery |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_assertion_query_build_request_msg
(LassoAssertionQuery *assertion_query);
Build an Assertion Query profile request message.
|
a LassoAssertionQuery |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_assertion_query_process_request_msg (LassoAssertionQuery *assertion_query,gchar *request_msg);
Processes a Assertion query or request message. Rebuilds a request object from the message and check its signature.
|
a LassoAssertionQuery |
|
the Assertion query or request message |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_assertion_query_build_response_msg
(LassoAssertionQuery *assertion_query);
Builds the Response message.
|
a LassoAssertionQuery |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_assertion_query_process_response_msg (LassoAssertionQuery *assertion_query,gchar *response_msg);
Parses the response message and builds the corresponding response object.
|
a LassoAssertionQuery |
|
the response message |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_assertion_query_add_attribute_request (LassoAssertionQuery *assertion_query,char *format,char *name);
Append a new attribute designator to the current attribute request.
|
a LassoAssertionQuery object |
|
the attribute designator format |
|
the attribute designator name |
Returns : |
0 if successful, an error code otherwise. |
LassoAssertionQueryRequestType lasso_assertion_query_get_request_type
(LassoAssertionQuery *assertion_query);
Return the type of the last processed request.
|
a LassoAssertionQuery object |
Returns : |
a LassoAssertionQueryRequestType value |