Date
...
Name | Present | Planned Absences |
---|---|---|
Yes | ||
Yes | time collision | |
Yes | ||
Yes | ||
Kevin Day | Yes | |
Jens Heinrich | Yes | Out next week |
Discussion items
Time | Item | Who | Notes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
5 min | Proxy for Dev-Setup |
Today:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 min | Cookie SameSite topic raised in Slack | Team + Zak |
Today:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1 min | Update on SECURITY-159 / FOLIO-4012 | Craig | We're on track here. Ian H. applied mitigation. Upgrade will happen when John Malconian returns from vacation.
Today
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0 min | Jira Group and Security Level review | Team | From Craig in slack:
TODO:
Today:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
< 5 min |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
jqlQuery | filter=12879 | count | true
| Team |
| on
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
- on or if they don't have bandwidth, and the debian packages aren't used anymore, archive them. It sounds like some SysOps do use this, but we know that DevOps has very little bandwidth these days.
Anything Urgent?
Review Mike's Kanban board?
Review Security board?
Under Review Filter: Jira Legacy server System Jira jqlQuery filter=12879 count true serverId 01505d01-b853-3c2e-90f1-ee9b165564fc
- Action: Create a Jira for folio devops to set Strict Transport Security header in hosted reference environments. Then link the story to
Jira Legacy server System Jira serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key SECURITY-170 - Craig McNally will create the story and link it up.
- There is potential for a conflict between Strict Transport Security Header and the proxy approach used for cookies with SameSite=Strict. We need to think through how this will work.
- Problems stem from UI devs hosting dev builds of the UI locally (e.g. http://localhost:3000), and pointing to a hosted backend (e.g. folio-snapshot).
- Maybe we can make the proxy listen on https (using a self-signed cert)
- Jens proposed the idea of rewriting the cookie domain in the proxy
- What about CORS though?
- Action: John Coburn will discuss this with the dev who implemented the proxy stuff in stripes-cli.
Today:
TODO: Need to review/triage new SECURITY issues reported (found via PRISMA scan):
Today:
- Unembargoed several issues which were rejected/completed (SECURITY-171-178
remains open. See alsoJira Legacy server System Jira serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key SECURITY-177 Jira Legacy server System Jira serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key SECURITY-182 - Action: Craig will provide updates via slack as Taras digs into this.
- Closed out
Jira Legacy server System Jira serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key SECURITY-101 - Rejected
171 Longer discussion onJira Legacy server System Jira serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key SECURITY- 181 - Discussed
as Jens Heinrich did not judge the risk low enoughJira Legacy server System Jira serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key SECURITY-177
. Will keep on the board for tracking purposes.171 - Action: Julian Ladisch to create a brief wiki page listing 3rd party dependencies/frameworks/etc. which are out of support. Maybe we should link to this from the flower release notes?
From slack conversation, I think I've gathered the following:
- In this case (bank account and transit numbers), the information is highly sensitive.
- Highly sensitive information should:
- Be stored in it's own table
- Accessed via a dedicated API
- Protected by a dedicated permission
- Encrypted in the database, not only on disk.
- This could mean either:
- Explicitly encrypting/decrypting in the application layer and storing the encrypted data in postgres
- Utilizing postgres extensions/modules to encypt certain columns, e.g. via pgcrypto (see https://www.postgresql.org/docs/current/encryption-options.html)
- This could mean either:
- Highly sensitive information should:
Let's review and discuss before providing this feedback to Raman.
Axel Dörrer also suggested that defining classes of sensitivity could help teams determine which techniques are applicable in various situations. I agree having some general guidelines on this would be helpful.
- regular data
- low sensitive - permission based on same API
- high sensitive - permission based on dedicated API
It would probably help to provide concrete examples of data in each class. This can be a longer term effort, we don't need to sort out all the details today.
- Next Steps:
- Clearly define/formalize the various classes
- Come up with concrete examples of each class
- Build out guidance
- Come up with concrete examples of how to protect each class of data.
- Consider storing some classes of data outside of postgres altogether - e.g. in secret storage.
- What would be the guidance we provide to teams for this so we don't end up with each team doing things differently?
- SecretStore interface and existing implementations are currently only read-only. They would need to be extended to allow for creation/mgmt of this information.
- Craig to start a conversation in slack about this.
- Seeking a volunteer to generate a draft document for us to review at a later meeting.
- Clearly define/formalize the various classes
Today:
Axel Dörrer to do a first draft as a base for further discussions
Due to some absences on different reasons the group stalled. Axel will try to reactivate the group.
...