Attendees: Johan, Shayna, Scott, Ivan, Roland, Matthew E.
0 - Agenda bash
1 - Project review
a. General -
Roland updated fedservice library to work again after some changes to idpyoidc
Roland is also working on openid4v (OID4VCI and OID4VP) package testbed or example that will contain the normal components in a digital wallet ecosystem.
preparing a new release - with new OIDC backend - requirement to pull in idpy-oidc
Next step is to work on Roland's MR (
https://github.com/IdentityPython/SATOSA/pull/442) removing SAML bits, replacing encryption and signing with cryptojwt. Then crypto will be the dependency and pysaml2 will not be a dependency. That will be a separate, major release since it changes the default dependencies. Include messages so that when someone tries to import a module / use a frontend or backend without pulling in dependencies, they will get an error message.
after this, consolidate SAML logout and OIDC logout
Should think about introducing server side storage
sql? One problem is manual cleanup required. But it is more clearly defined.
More specific to sessions - redis? Cleanup is handled nicely but licensing may cause problems for some. It is "almost open source". If it is used in a commercial product under certain conditions, then there is an issue.
Matthew prefers pure opensource solutions. Sql database helps with clearly defined schema. Non-sql is hard to figure out.
He has struggled with oidc figuring out how to do static registration.
Need to define the interface and define types - class that defines how payload looks.
There is also a documentation issue - someone who is knowledgeable but new can't figure out how to do some simple things. As new things are developed and decisions made, Matthew will help with the documentation.
Bottom line -the data model is missing.
There are other openMRs that need follow-up.
Typing from Fredrik and Johan is still waiting - will get to it after next release.
Fixing MR/PR issues regarding changes in the modules and dependencies used. Things like the python version changes, modules change behavior, etc.
user gets a response from idp - with attributes - one defines type of value of attribute - within the type it mentions a prefix. Prefix is defined with an xml namespace. This is called QName -awareness. The built in xml parser removes the namespace.
xsi:type - python parser is not QName-aware
xpath - c implementation that python uses. Smaller than lxml but limited.
this can be fixed by using lxml, xml library with c-bindings, but it also adds other issues and complexity. Has to be configured correctly. To make this a compatible change is not easy.
there is also a schema checker that may be of help. Ivan will check with the developer.
Ivan could make lxml an optional dependency.
Ivan has done half the work but he is concerned about whether he should invest more time.
A fundamental issue is that python garbage collection does not work well with C layer memory management. Deployers using SATOSA with that library would need to restart their servers frequently. For example pyff , which uses lxml, needs to be restarted hourly in a production Scott has.
Issues around how temporary files are deleted - mostly affecting Windows users. Proposal on how to make it independent of platform. Usually these temp files are certificates or templated xml that will be signed. Ideally we could work in memory for these types of things.
e. Any other project (pyFF, djangosaml2, pyMDOC-CBOR, etc)
Leif made two new pyff releases - 2.1.0 and 2.1.1. We should get him to summarize the changes for us.
RDCT/SCG is making a standalone seamless access deployment, using pyff, thiss-mdq and thiss.js . Once in production it will be packaged up in a reusable way for others to deploy. Arlen Johnson is working on some of the packaging and Hannah S will work on an all inclusive docker compose project. Generalizing to contribute to docker official images library or something similar.
2 - AOB