![]() |
![]() |
![]() |
Lasso Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
struct LassoDefederation; LassoDefederation * lasso_defederation_new (LassoServer *server
); lasso_error_t lasso_defederation_build_notification_msg (LassoDefederation *defederation
); void lasso_defederation_destroy (LassoDefederation *defederation
); lasso_error_t lasso_defederation_init_notification (LassoDefederation *defederation
,gchar *remote_providerID
,LassoHttpMethod http_method
); lasso_error_t lasso_defederation_process_notification_msg (LassoDefederation *defederation
,gchar *notification_msg
); lasso_error_t lasso_defederation_validate_notification (LassoDefederation *defederation
);
The Federation Termination Notification Profiles serves to suppress federations between identity providers and services providers. It can be initiated by any of the partners using Redirect or SOAP binding.
LassoDefederation * lasso_defederation_new (LassoServer *server
);
Creates a new LassoDefederation.
|
the LassoServer |
Returns : |
a newly created LassoDefederation object; or NULL if an error occured |
lasso_error_t lasso_defederation_build_notification_msg
(LassoDefederation *defederation
);
Builds the federation termination notification message.
It gets the federation termination notification protocol profile and:
if it is a SOAP method, then it builds the federation termination
notification SOAP message, optionally signs the notification node, sets
msg_body
, gets the SoapEndpoint url and sets msg_url
of the federation
termination object.
if it is a HTTP-Redirect method, then it builds the federation termination
notification QUERY message (optionally signs the notification message),
builds the federation termination notification url with federation
termination service url, sets msg_url
in the federation termination
object, sets msg_body
to NULL.
|
a LassoDefederation |
Returns : |
0 on success; or a negative value otherwise. |
void lasso_defederation_destroy (LassoDefederation *defederation
);
Destroys a LassoDefederation object.
|
a LassoDefederation |
lasso_error_t lasso_defederation_init_notification (LassoDefederation *defederation
,gchar *remote_providerID
,LassoHttpMethod http_method
);
Sets a new federation termination notification to the remote provider id with the provider id of the requester (from the server object) and the name identifier of the federated principal.
|
a LassoDefederation |
|
the provider id of the federation termination notified provider. |
|
the HTTP method to send the message. |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_defederation_process_notification_msg (LassoDefederation *defederation
,gchar *notification_msg
);
Processes a lib:FederationTerminationNotification message. Rebuilds a request object from the message and optionally verifies its signature.
Set the msg_nameIdentifier attribute with the NameIdentifier content of the notification object and optionally set the msg_relayState attribute with the RelayState content of the notification object.
|
the federation termination object |
|
the federation termination notification message |
Returns : |
0 on success; or a negative value otherwise. |
lasso_error_t lasso_defederation_validate_notification
(LassoDefederation *defederation
);
Checks notification with regards to message status and principal federations; update them accordingly.
|
a LassoDefederation |
Returns : |
0 on success; or a negative value otherwise. |