2025-06
<- 2025-05
-> 2025-07
2025-06-20
OxCaml
https://github.com/oxcaml/oxcaml
Rust の機能を OCaml に入れたみたいな紹介をされがちだが、実際にはライフタイムではなくいくつかの単純化されたモードを扱うため、C# の ref struct 周りのスタックアロケーションの導入に近いと思う
2025-06#6851babb00000000002cd691 の続き
CSI Driver は Driver Spec において要求するトークンの audience を指定することができる
https://kubernetes-csi.github.io/docs/csi-driver-object.html#what-fields-does-the-csidriver-object-have tokenRequests
このトークンはボリュームを要求するタイミングで kubelet が発行するため、任意のサービスアカウントトークンが発行されるという事態にはならない
Secrets Store CSI Driver はこのトークンを Provider に渡している
ので、適切な権限を持つトークンが発行されていなければエラーということをやればいいだけなはずだが、やっていないだけという話っぽい
ただデフォルトのデプロイではトークンを要求しないのでうまくいかない。Provider によって Driver Spec に設定するべき内容が変わるというのが難しそうではある
2025-06-18
Secrets Store CSI Driver の AWS Provider の実装を眺めた
CSI Driver の側から Pod のトークンが渡ってきて、それをいい感じに交換して渡しているのだろうと思っていたが、そんなことはないらしい
namespace と service account と pod の情報から token を作り、それを使って認証している
なので serviceaccount/tokenのcreateがいる
https://github.com/aws/secrets-store-csi-driver-provider-aws/blob/29cd21bda49c41d372745ae66d30c12b768691f2/deployment/aws-provider-installer.yaml#L13-L15
これは非常に強力で、任意のワークロードが持つ権限を窃取できる
セキュアとか言ってるのなんだったんだ