Commit Graph

4419 Commits

Author SHA1 Message Date
Benjamin Dauvergne c14fdb11ec Tests SAML2: use & test encryption 2010-01-12 15:40:29 +00:00
Benjamin Dauvergne 9554334c91 SAML 2.0: add saml2_helper.h to include files to install 2010-01-12 15:40:28 +00:00
Benjamin Dauvergne 9efcaac3f3 Tests: fix inclusion of id-wsf 2.0 tests 2010-01-12 15:40:26 +00:00
Benjamin Dauvergne cc502b2b98 Core: add new SAML 2.0 public header to top level header lasso.h 2010-01-12 15:40:24 +00:00
Benjamin Dauvergne df258845c7 ID-WSF 2.0: remote saml2_login_private.h from Makefile.am 2010-01-12 15:40:23 +00:00
Benjamin Dauvergne b77c9cf2e8 Bindings: add support for time_t to bindings, add support for 'string' type for list in java binding 2010-01-12 15:40:21 +00:00
Benjamin Dauvergne 7142d50d16 in saml2_helper.{c,h}, remote const modifier from time_t type 2010-01-12 15:40:20 +00:00
Benjamin Dauvergne 436c8cb232 in saml-2.0/name_id_management.c: handle NewEncryptedID, only encrypt if needed 2010-01-12 15:40:18 +00:00
Benjamin Dauvergne e956ca8818 in saml-2.0/logout.c: remove commented code, only encrypt if needed, intialize local variables 2010-01-12 15:40:16 +00:00
Benjamin Dauvergne 59f8ae0944 in lasso_saml20_login_init_idp_initiated_auhtn_request, do not use init_authn_request, manually create the request. 2010-01-12 15:40:15 +00:00
Benjamin Dauvergne 76ae81022c in lasso_saml20_login_init_authn_request, use saml-2.0/profile.c functions to reduce code size 2010-01-12 15:40:14 +00:00
Benjamin Dauvergne 63206b32f2 in saml-2.0/profile.c, in lasso_saml20_build_response_msg, when no url is given, only stop for bindings needing one 2010-01-12 15:40:12 +00:00
Benjamin Dauvergne 39eba085a5 in saml-2.0/profile.c, in lasso_saml20_profile_init_response make direct access 2010-01-12 15:40:11 +00:00
Benjamin Dauvergne 926bfeee2c in saml-2.0/profile.c, in lasso_saml20_init_request better check for supported bindings, do not check for identity or session, report SESSION_NOT_FOUND only if first_in_session is used, do not stop on missing name_id. 2010-01-12 15:40:09 +00:00
Benjamin Dauvergne 845e302415 in saml2_helper.c, remove dead code 2010-01-12 15:40:08 +00:00
Benjamin Dauvergne e06e9db029 SAML 2.0: in lasso_saml20_provider_accept_http_method, add HTTP-Artifact-POST case, better check for bad inputs, and handle special SingleSignOn case 2010-01-12 15:40:07 +00:00
Benjamin Dauvergne 003916b452 Core Profile: remove need for identity in lasso_profile_get_nameIdentifier 2010-01-12 15:40:06 +00:00
Benjamin Dauvergne 9caacc3bb6 Core Server: make default to load signing private key also as encryption private key 2010-01-12 15:40:04 +00:00
Benjamin Dauvergne 5ac1c303cc Commit to delete 2010-01-12 15:40:03 +00:00
Benjamin Dauvergne 413932306d Core: rewrite lasso_assertion_encrypt using lasso_xmlsect_load_key and add recipient argument 2010-01-12 15:40:01 +00:00
Benjamin Dauvergne a237cd1057 Core: add simple function to load key from any format 2010-01-12 15:39:59 +00:00
Benjamin Dauvergne d42c16e239 Core Node: add args to lasso_node_encrypt to set recipient of an encrypted element 2010-01-12 15:39:57 +00:00
Benjamin Dauvergne ddbe21ae5b Binding python: provide old binding name for set_encryptionMode 2010-01-12 15:39:55 +00:00
Benjamin Dauvergne 2ff13e5414 SAML 2.0: overhaul for ubuquitous binding support, still need work for HTTP-Artefact 2010-01-12 15:39:48 +00:00
Benjamin Dauvergne 0988cc2ec8 Core: in profile.c, profile.h, profileprivate.h, add a new attribute to express signature needs 2010-01-12 15:39:45 +00:00
Benjamin Dauvergne 601617843b Core: in identity.c, do not emit trace when lasso_identity_get_federation fails 2010-01-12 15:39:43 +00:00
Benjamin Dauvergne ac3a687518 XML Core: in xml.c, private.h, add a lasso_node_remove_signature function 2010-01-12 15:39:42 +00:00
Benjamin Dauvergne 01dad5fd05 XML: fill node_data->{certificate,private_key}_file_offset for nodes with signatures 2010-01-12 15:39:40 +00:00
Benjamin Dauvergne d461fe3957 Core: in xml/private.h, add new field to LassoNodeClassData for private_key and certificate handling 2010-01-12 15:39:38 +00:00
Benjamin Dauvergne cf45d9fc99 Core: in provider.h, add LASSO_PROVIDER_ROLE_BOTH 2010-01-12 15:39:37 +00:00
Benjamin Dauvergne 1eb34af43f Core: in profile.c, make lasso_profile_get_nameIdentifier work for transient federations
* lasso/id-ff/profile.c:
   if no LassoIdentity is accessible try to get a name identifier
   through the assertion in the LassoSession object. This allows the
   logout profile to work without an identity object (which is normal
   since logout does not modify the federation status).
2010-01-12 15:39:35 +00:00
Benjamin Dauvergne 85161f15a7 Core: in provider.h, add new SAML 2.0 HTTP-Method, PAOS 2010-01-12 15:39:34 +00:00
Benjamin Dauvergne 4fe35b69cc SAML 2.0: add new function to factorize adding signature to a message 2010-01-12 15:39:33 +00:00
Benjamin Dauvergne 56bd9e2405 Fix mitm attack using the AssertionConsumerURL property on requests
* lasso/saml-2.0/login.c: check that the URL is know before using it
 * lasso/saml-2.0/provider.c lasso/saml-2.0/providerprivate.h:
   add a function to check that an URL corresponds to a know
   AssertionConsumer of the given provider.
2010-01-12 15:39:31 +00:00
Benjamin Dauvergne 21cc1bf7ee ID-WSF 2.0: fix in documentation 2010-01-12 15:39:28 +00:00
Benjamin Dauvergne fcd8739f49 Bindings: simplify GList handling 2010-01-04 09:16:00 +00:00
Benjamin Dauvergne 914a176d99 XML: add element type annotation to all GList fields 2010-01-04 09:15:55 +00:00
Benjamin Dauvergne 65642d732c Bindings: in bindings/python/Makefile.am, precise generated files dependencies 2010-01-04 09:15:48 +00:00
Benjamin Dauvergne 42c81da4f4 XML: move SOAP API to its own sub directory 2010-01-04 09:15:42 +00:00
Benjamin Dauvergne 91aa1f61c7 Bindings: in overrides.xml, remove noew useless directives 2010-01-04 09:15:38 +00:00
Benjamin Dauvergne 86d837bf5b Python binding: update test scripts to new ID-WSF API 2010-01-04 09:15:36 +00:00
Benjamin Dauvergne 6e7ed2e5cc Binding ID-WSF 2.0: do not bind lasso_wsa_endpoint_reference_get_*_token methods 2010-01-04 09:15:35 +00:00
Benjamin Dauvergne d1ada7b833 Tests: add idwsf2_tests.c, call from tests.c, update Makefile.am 2010-01-04 09:15:32 +00:00
Benjamin Dauvergne bfb8483823 ID-WSF 2.0: in profile.{c,h}, discovery.{c,h}, data_service.{c,h}, overhaul all profiles.
* lasso/id-wsf-2.0/profile.c lasso/id-wsf-2.0/profile.h:
   - lasso_idwsf2_profile_get_name_identifier returns the NameID found
     in an assertion used as a WS-Security token when security mechanism
     Bearer or SAML are used.
   - complete the function lasso_id_wsf2_profile_build_soap_envelope
     with construction of the Sender element which is used to transmit
     the providerID of the message sender by the SOAP binding ID-WSF 2.0
     specification.
   - remove useless instance_init function in profile object
   - reset some profile fields in process_soap_request_msg (response,
     body, nameIdentifier).  use
     lasso_saml20_profile_name_identifier_decryption for handling NameID
     from WS-Security mechanism assertion.
   - add private_data
   - change signature of lasso_idwsf2_profile_init_soap_request to use
     and EPR and a security mechanism specifier when building the SOAP
     request.
   - change signature of lasso_idwsf2_profile_process_soap_request to
     verify security_mech_id of received messages.
 * docs/reference/lasso/lasso-sections.txt:
   add the function to the documentation.

 * lasso/id-wsf-2.0/discovery.{c,h}:
   - use utils.h macros instead of g_return_val_if_fail because it
     removes useless warning, since it returns an error code.  release
     acquired resources.
   - in lasso_idwsf2_discovery_metadata_register_self, return error code
     instead of identifier string for the new service, use an out
     parmeter to return the identifier, use utils.h macros.
   - in lasso_idwsf2_discovery_init_metadata_register, use utils.h
     macros, check return code of lasso_idwsf2_profile_init_soap_request.
   - change signature of lasso_idwsf2_discovery_init_metadata_register
     to support security_mech_id, try to get URL from an existing
     Discovery service EPR (from Session object).
   - change signature of
       lasso_idwsf2_discovery_process_metadata_register_msg,
       lasso_idwsf2_discovery_init_metadata_association_add,
       lasso_idwsf2_discovery_process_metadata_association_add_msg,
       lasso_idwsf2_discovery_init_query,
       lasso_idwsf2_discovery_process_query_msg, to support security
       mechanism.
   - improve lasso_idwsf2_discovery_build_query_response_eprs.
   - add lasso_idwsf2_discovery_get_nth_data_service to acces returned
     services.
 * lasso/id-wsf-2.0/data_service.{c,h}:
   - redo all the API
2010-01-04 09:15:24 +00:00
Benjamin Dauvergne 277fc83eb1 ID-WSF 2.0: in session.c, fix memory handling errors 2010-01-04 09:15:22 +00:00
Benjamin Dauvergne 29558f6a6a ID-WSF 2.0&ID-WSF: in profile.c, wsf_profile.c, errors.c, errors.h, and in lasso-sections.txt change LASSO_SOAP_FAULT_REDIRECT_REQUEST to LASSO_SOAP_ERROR_REDIRECT_REQUEST_FAULT 2010-01-04 09:15:20 +00:00
Benjamin Dauvergne bf084c5eb8 ID-WSF 2.0 Errors: in errors.{c,h}, add new errors code for ID-WSF 2.0
- add LASSO_DST_ERROR_EMPTY_REQUEST
 - add LASSO_WSF_PROFILE_ERROR_SECURITY_MECHANISM_CHECK_FAILED
 - add new errors codes for generic profiles and disco service
2010-01-04 09:15:17 +00:00
Benjamin Dauvergne 9df401c187 ID-WSF 2.0 XML: in strings.h, add identifiers from ID-WSF 2.0
standards

 - add status code for ID-WSF 2.0 DST
 - add token usage identifiers
 - conform security mechanism identifiers to ID-WSF 2.0 Liberty Sech
   Mech specification
 - add Discovery Service status codes
 - add Soap Binding status codes
 - add disco result type and user interaction hint strings
2010-01-04 09:15:14 +00:00
Benjamin Dauvergne a0fd0318dc ID-WSF 2.0 XML: in sec_token.c, remove extra SNIPPET_ANY 2010-01-04 09:15:11 +00:00
Benjamin Dauvergne f4aefd71f8 ID-WSF 2.0 XML: in util_response.{c,h}, add helper functions to idwsf2_util_status 2010-01-04 09:15:09 +00:00