- Canceled due to winter holidays
- Recording
- Announcements *
- Demos *
- Designs of note
- CSR multi-signer proposal - kubernetes/enhancements#1400 [@deads2k]
- Pulls of note
- kubernetes/kubernetes#79083 - client certificate rotation [jackkleeman]
- Issues of note *
- Discussion topic
- [gcastle] Bringing an internal Google discussion to sig-auth audience: can we do better than file-system mounted secrets inside core K8s? Ideally filesystem information leaks (directory traversal bugs) wouldn’t result in secrets lost to bad guys. Christoph Kern to join us as a guest speaker.
- Desire to provide applications with an alternate way to obtain secrets without exposing secrets in files easily vulnerable to directory traversal
- Potential directions
- option to encrypt + store encryption keys in an xattr. kubernetes/kubernetes#81125 (comment)
- option to remove secret file content after container is ready
- [seh] Related: Following discussion on Slack, how can CSI drivers more securely acquire service account tokens from the pods into which they’re mounting? Mike Danese suggested that the kubelet should fetch attenuated tokens to hand to the CSI driver, rather than either forcing the driver to grovel around on the filesystem looking for tokens or having the driver request the tokens via the TokenRequest API.
- seh: look around the filesystem :(
- Tim: CSI driver creates TokenRequest directly
- Global CSI Driver object. Is that a good spot? Are those objects usually locked down? Kubelet passes CSI Driver token with some globally configured audience.
- [gcastle] Bringing an internal Google discussion to sig-auth audience: can we do better than file-system mounted secrets inside core K8s? Ideally filesystem information leaks (directory traversal bugs) wouldn’t result in secrets lost to bad guys. Christoph Kern to join us as a guest speaker.
- Action Items *
- Sweep issues with leftover time
- Canceled due to proximity with Thanksgiving
- Canceled due to proximity with 1.17 code freeze
- Recording
- Announcements *
- Demos *
- Pulls of note *
- Issues of note *
- Designs of note *
- Discussion topic
- Future of PSPs, alternatives, migration
- What is the 90% use case?
- Corner cases / exceptions:
- Windows
- Sandboxed RuntimeClasses
- Future of PSPs, alternatives, migration
- Action Items *
- Sweep issues with leftover time
- Recording
- Announcements
- oss-fuzz and test/fuzz/
- Demos *
- Pulls of note *
- Issues of note
- Dynamic Audit Policy
- we've started this design a few times, and ended up with very complex approaches multiple times
- Tim wanted to ask some more fundamental questions to help focus the design
- to make progress, likely need to have dedicated synchronous time to work through the design
- Should we schedule some time at KC NA?
- dimensions:
- noise (e.g. events)
- cluster admin filters things they consider noisy (or resource authors?)
- webhooks can opt into more noise?
- sensitivity (e.g. secret request/response contents?)
- indicate sensitivity per resource?
- built-in resources like secrets
- custom resource authors
- could inform things like
- encryption at rest
- allowed audit levels for webhook
- cluster admin indicates things they consider sensitive that may not be sent to audit webhooks?
- webhooks cannot opt into receiving sensitive info the cluster admin has disallowed?
- need to be careful not to mislead webhooks (they think they registered to receive events, but don't get them at all because the cluster-admin disabled a specific resource)
- indicate sensitivity per resource?
- noise (e.g. events)
- areas of focus for debug
- everything (interactions between namespaces/users)
- namespace-focused
- user-focused
- Action items:
- look at previously discussed use cases in light of the noise/sensitivity dimensions
- consider whether use cases could be addressed with a trusted sink that receives everything and filters (identify gaps that would prevent that approach). most likely limit of backend-based filtering would be scale, but if an API and implementation was proved as a backend, it could be brought into the API server to address scale concerns
- follow up with api-machinery on possibility of indicating sensitivity at a resource level
- Dynamic Audit Policy
- Designs of note
- Discussion topic *
- Action Items *
- Sweep issues with leftover time
- Recording
- Announcements *
- Demos *
- Pulls of note *
- Issues of note *
- Designs of note
- Discussion topic
- Deprecate ABAC k/k#82540
- AI(mo): send the deprecation email to kubernetes-dev
- Need approval to move secrets-store csi driver to kubernetes-sigs. Issue link
- AI(mikedanese): List pros and cons of inclusion, share findings with the list.
- Pros:
- Community discussion and contribution.
- Pros:
- AI(mikedanese): List pros and cons of inclusion, share findings with the list.
- Deprecate ABAC k/k#82540
- Action Items *
- Sweep issues with leftover time
- Recording
- Issues of note
- Designs of note
- Extended NodeRestrictions for Pods
- question about whether we should enforce policy on labels outside k8s.io/kubernetes.io prefixes (node self-labeling doesn't enforce policy
- limiting ownerReferences makes sense (mirror pods shouldn't have controller:true references)
- limiting annotations seems speculative. should we lean on webhook admission protections instead?
- compatibility questions (things like network plugins setting annotations on pod status update using kubelet creds?)
- Certificates KEP
- ready for initial merge to capture current state
- follow up to work through GA/v1 requirements
- Extended NodeRestrictions for Pods
- Discussion topic
- 1.17
- Token request to GA?
- Merged KEP
- Update docs
- API/usage doc
- Define structure of SA tokens as not opaque
- Key ID docs?
- Promote existing e2es to conformance?
- Requires API server invocation changes to be conformant
- Gather feedback on usage
- Istio
- AWS
- linkerd wants to
- Feature requests
- Vault CSI driver
- In progress
- Vault auth backend
- Change token review url to point at new version
- Plans for SA token volume projection?
- Performance numbers around large clusters
- volume projection issues with permissions/fsGroups interactions
- client readiness (refreshing behavior across libraries)
- Some numbers around community adoption?
- docs/breadcrumbs for people encountering new behavior
- improve message from service account token authenticator when using an expired token to point to solution
- ensure docs for components needing to update their client libraries that match the more informative error message so they are discoverable
- ensure docs for users encountering expired errors second-hand via apps/components they do not control
- method for gathering metrics about whether workloads are refreshing tokens correctly?
- maybe mint tokens with long lifetimes, but continue refreshing every 10 minutes, expose metrics or audit info when tokens older than 10 minutes are presented (means a particular workload isn't refreshing tokens correctly)
- Expose metrics on successful refreshes
- Dynamic audit policy
- Extended NodeRestrictions for Pods
- External Projected Token Creation
- OIDC Issuer URL (link fixed)
- Token request to GA?
- Dynamic audit policy: call for comments, short proposal overview, roadmap /can do that in the slot above too - Georgi
- 1.17
- Action Item:
- Mike to file an issue for things that need to be done for Vault kubernetes-credential-backend
- Sweep issues with leftover time
- Cancelled, empty agenda
- Recording
- Discussion topic
- wg-policy update
- Sweep issues with leftover time
- Recording
- Announcements
- Contributor Summit! Nov 17th and 18th before KubeCon/CloudNativeCon. We need security and other lovely sig-auth content! What do you need to share with 400 contributors? Teach them? Security audit review? https://forms.gle/Fez7U8UZAzVxykNW9
- Demos *
- Pulls of note *
- Issues of note *
- Designs of note
- Discussion topic
- [Rita Zhang] Should we add https://github.com/deislabs/secrets-store-csi-driver to kubernetes-sigs org? Sig sponsor?
- We need criteria
- Identify owners
- Make sure that we have alignment with the sig-auth charter
- Review the current state of the project
- Rita Zhang to start a thread on [email protected]
- We need criteria
- [Georgy Pavlov] Audit policy use cases & requirements - take 1
- Need to decide if this needs to be included beta for dynamic audit
- [Tim Allclair] WG Security Process Proposal
- sig-auth to sponsor?
- [Rita Zhang] Should we add https://github.com/deislabs/secrets-store-csi-driver to kubernetes-sigs org? Sig sponsor?
- Action Items *
- Sweep issues with leftover time
- Recording
- Announcements
- Requesting feedback on what folks would like to see covered in KubeCon NA 2019 (San Diego) SIG Auth deep dive (please respond to thread on mailing list)
- Options
- Walkthrough of OPA/gatekeeper?
- Refactor of PSP
- [Mo] what does policy wg talk about?
- PSP might be a good option to talk about at contributor summit.
- Authentication (client exec plugin, webhook)
- RBAC?
- Maybe not a topic by itself
- Certificates API, approvers
- Audit webhook
- Audit policy API
- Node authorizer, node admission
- Walkthrough of OPA/gatekeeper?
- Demos *
- Pulls of note *
- Issues of note *
- Designs of note *
- Discussion topic
- Audit policy use cases & requirements
- Doc going to mailing list
- Discussion punted for next meeting
- Audit policy use cases & requirements
- Action Items *
- Sweep issues with leftover time
- Recording
- Announcements *
- Demos *
- Pulls of note *
- Issues of note *
- Designs of note *
- Discussion topic
- Future of PodSecurityPolicy, and whether (or to what extent) policy belongs in core Kubernetes - see this comment for context
- Action items *
- Sweep issues with leftover time
-
Announcements
- Requesting feedback on what folks would like to see covered in KubeCon NA 2019 (San Diego) SIG Auth deep dive (please respond to thread on mailing list)
-
Demos
- Demo and feedback for kube-oidc-proxy - Joshua Van Leeuwen (@joshvanl)
-
Pulls of note *
-
Issues of note *
-
Designs of note *
-
Discussion topic
-
[@shturec] Quick heads up: auditregistration/v1alpha1 api review
-
-
Action items
- As part of the key ID changes to SA, we should consider if all SA tokens should no longer be considered opaque
-
Can sweep unassigned issues with leftover time
- Recording
- Announcements *
- Pulls of note *
- Issues of note *
- Designs of note
- Discussion topic
- [@jackkleeman] certificate rotation for more cluster components
- Is a kubelet style approach appropriate where perhaps you provide an initial cert and then the application keeps it fresh using CSR API
- Could the controller sign any csr requested by an entity with the exact same username and group, if they have a special role.
- Instead, could we perhaps just allow the reload of certs from disk on a signal
- this is the preferred first step, more reusable, allows integration with a broader variety of PKIs
- [@ahmedtd, @mikedanese] Add Key IDs to access tokens kubernetes/kubernetes#78502
- Follow up with @mo
- Note it in OpenID Connect discovery doc
- [@jackkleeman] certificate rotation for more cluster components
- Can sweep unassigned issues with leftover time
- Cancelled, empty agenda
- Cancelled, empty agenda
- Recording
- Announcements
- 1.15 feature freeze was yesterday
- Pulls of note *
- Issues of note:
- Designs of note
- Discussion topic
- [cjcullen] Product Security Committee handling of ~Medium severity vulns: kubernetes/committee-security-response#28
- Open thread on kubernetes-security-discuss (cc sig-auth)
- Might be worth adding a sentence on the availability metric of CVSS as well
- Ask security audit team if a threat model is being produced
- #504
- [haiyanmeng] Node-scoped DaemonSets follow-up
- short-term plan, run node daemonsets with kubelet credentials
- long-term plan
- avoid tangling authorizers together
- consider conditionalizing authorization
- [@pbarker] Discuss what issues need to be completed for dynamic audit to reach beta kubernetes/kubernetes#70816
- [cjcullen] Product Security Committee handling of ~Medium severity vulns: kubernetes/committee-security-response#28
- Can sweep unassigned issues with leftover time
- Recording
- Announcements *
- Pulls of note *
- Issues of note:
- Designs of note
- Discussion topic
-
- [liggitt] split RBAC reconcile/evaluation to staging repo
- for consumption by
[kubectl auth reconcile](https://github.com/kubernetes/kubernetes/pull/74879#issuecomment-478675341)
, other external consumers - mailing list thread
- for consumption by
- [liggitt] split RBAC reconcile/evaluation to staging repo
- Can sweep unassigned issues with leftover time
- Recording
- Announcements *
- Pulls of note *
- Issues of note:
- Designs of note
- Discussion topic
- [destijl] Discouraging use of secrets in environment variables
- for kube
- update API docs to indicate security issues
- remove any use from actual kube artifacts
- when included in examples, accompany with caveats
- Beyond docs:
- We likely want some way to programmatically discourage and enforce policy for secrets in env vars. It probably needs to be applicable per namespace, rather than per cluster.
- Current feeling is that solving this outside K8s using something like OPA would make some sense.
- for knative
- consider ways to enable but require users to be aware of security issues (naming of API to include "insecure", etc?)
- for kube
- [tallclair] RuntimeClass supported features & policy
- "what does the runtime support?" vs "what is the user allowed to do?"
- E.g. gvisor doesn’t allow host networking on purpose, they don’t want people thinking they are sandboxed but allowed to poke a dangerous hole. While gvisor could support host networking, they don’t want to.
- Windows pods: want to fail fast if they request linux features.
- If you request apparmor in selinux pod will fail, reverse isn’t true. Some inconsistency there.
- Runtimeclass admission control validation that handles these separately? Do plan to add that for: injecting pod overhead (WIP), scheduling (tolerations, KEP exists).
- Do I want to write pods that target multiple runtimeclasses? Default runtimeclass so I don’t care as a pod author? Plan to handle defaulting through PSP. Maybe runtimeclass selection: “support for windows”, “support for GPUs” etc.
- Should pod authors target by name the runtimeclass? Expect to do nothing? Will windows add a runtimeclass?
- [clayton] We may want a completely separate podspec for windows.
- [liggitt] starting KEP for Certificate Signing Request (CSR) to v1
- will be looking at partitioning identified gaps/wishlist to determine what is a blocker for v1
- kubernetes/kubernetes#69836
- kubernetes/kubernetes#64547
- kubernetes/kubernetes#67436
- [destijl] Discouraging use of secrets in environment variables
- Can sweep unassigned issues with leftover time
- Recording
- Announcements
- Pulls of note
- Issues of note:
- first bug filed due to incompatibility of ProjectedTokenVolume
- Alpha is working as intended
- Audit e2e marked as flaky
- Plan to migrate many of these test cases to integration
- Add retries, permit and handle dropped audit events
- In 1.15, we can also get more consistent results by migrating to the dynamic audit webhook
- encrypted secrets
- KEP and feature tracking for 1.15 coming shortly.
- first bug filed due to incompatibility of ProjectedTokenVolume
- Designs of note
- Discussion topic
- service account external signer
- Focus on requirements. Let’s make sure that the requirements are settled then evaluate possible solutions.
- Do any existing interfaces exist that already fit this use case?
- PKCS#11? Loading an ABI much bigger than needed interface.
- service account external signer
- Recording
- Announcements
- extensions/v1beta1 removal plans (1.16) - #43214, @liggitt
- AI: include details about PSP permissions check
- Code freeze tomorrow
- wg-multitenancy repo
- extensions/v1beta1 removal plans (1.16) - #43214, @liggitt
- Demos
- Get feedback for rbac-manager and rbac-lookup - Rob Scott (@robertjscott)
- Test flakes
- Audit e2e tests
- Somewhat fragile methodology (scrape audit logs from e2e master, gce-specific), affected by log rotation policies, etc
- Should possibly be integration tests instead of e2es?
- Audit e2e tests
- Pulls of note
- Audit metadata fix for custom resources - #74617
- Controller manager using rotatable tokens - #72179
- Service account issuer discovery - community#2314
- AI: KEP from comments
- Designs of note
- Discussion topic
- Use of meetings for grooming/planning/communication
- mailing list thread
- cluster-lifecycle example
- Sweep things in progress
- Clearly define exit criteria
- Map out timelines for completion, blockers
- Example queries:
- Recent items:
- Issues with no assigned priority (mostly feature requests, needs triage)
- Issues with kind/bug
- Use of meetings for grooming/planning/communication
- Cancelled, empty agenda
- Cancelled, empty agenda
- Recording
- Announcements
- Seeding tech leads PR open for comment (mailing list thread, PR)
- Demos
- K8s secret flex volume and K8s secrets store CSI driver - Rita Zhang (@ritazh)
- Feedback on PV mechanism vs possible inline CSI volume (#64984)
- Support env variables: Azure/kubernetes-keyvault-flexvol#28
- Update secret value after it’s mounted: Azure/kubernetes-keyvault-flexvol#62
- K8s secret flex volume and K8s secrets store CSI driver - Rita Zhang (@ritazh)
- Pulls of note
- Deprecate DenyEscalatingExec admission plugin - #72737
- Deprecating --allow-privileged (@tallclair) - kubernetes/kubernetes#71835
- Designs of note *
- Discussion topics
- Discuss/review GMSA KEP for Windows - Deep Debroy (@ddebroy)/Jeremy Wood (@jeremywx)/Jean Rogue (@jean)
- [@pbarker] APIserver authentication to webhooks KEP kubernetes/enhancements#658
- Add comparison/discussion of existing kubeconfig-based mechanism for admission webhooks
- Add discussion of audience determination
- Discuss KEP requirements and timeline for the 1.14 release (@marpaia)
- sig-release: all enhancements for 1.14 must have a reviewed/approved/merged (and implementable?) KEP by feature freeze on 1/29
- Old enhancements already in progress need a KEP that includes graduation criteria, testing plan (see the KEP template for relevant checklists)
- Assistance available from sig-release
- 1.14 plans/priorities (add your name to items you plan to work on/participate in)
- Work through blockers to CSR API promotion - #69836 (@liggitt, @krmayankk)
- Divide items in that issue into required-for-v1 vs possible-for-v2
- Work on KEP with roadmap during 1.14, plan to start API updates in 1.15
- Kubelet Client/Serving cert rotation graduation (@liggitt, @krmayankk)
- Pull kubelet client cert rotation into KEP format for 1.14, ensure testing/docs are sufficient, push to graduate for 1.14
- Pull kubelet server cert rotation into KEP format, promote existing alpha CI tests to always run, consider graduating for 1.14 if ready in time
- Webhook auth - doc, kep (@pbarker?, @liggitt, @krmayankk)
- CVE-2018-1002105 post-mortem action items (@dekkagaijin)
- Transition SA controller clients to TokenRequest API #71275 (@enj)
- RunAsGroup to beta (Currently not clear what blockers we have to make this change) . I opened the following test issues for CI (#72287, #72253) (@krmayankk)
- No known blockers, work through the checklist for graduation/test
- External JWT signing support (#73110) (@micahhausler)
- Motivations:
- update signing keys without restart
- avoid secret material on disk
- allow offloading of token signing
- Motivations:
- Support configurable ProjectedTokenVolume rotation period (#73221) (@micahhausler)
- Work through blockers to CSR API promotion - #69836 (@liggitt, @krmayankk)
cancelled for zoom outage :(