On Thu, 2017-01-05 at 16:50 -0700, Jason Gunthorpe wrote:
On Thu, Jan 05, 2017 at 02:58:46PM -0800, James Bottomley wrote:In Ken's TSS2 they are for simple authorisation. However, policy auth
On Thu, 2017-01-05 at 15:21 -0700, Jason Gunthorpe wrote:Again, this was only to make the unpriv FD usable and safe against
On Thu, Jan 05, 2017 at 11:55:49AM -0800, James Bottomley wrote:Transactions are a hard thing to guarantee to be DoS safe and the
We don't really have that choice: Keys require authorization,I know, this is why I suggested a combo op (kernel level
so you have to have an auth session.
atomicity is clearly DOS safe)..
more complex they get, the more difficult they are to police within
the kernel. Plus we have to keep the R/W interface for backwards
compatibility now that we have it and I just don't see how we could
layer transactions into it without having some sort of in-kernel
emulator.
session DOS and that FD wouldn't use the legacy r/w interface. I
don't care if root can DOS the TPM via /dev/tpm0. combo ops would
need to be simple enough to reason about. (in my TPM libaries API
calls are combo'd with session anyhow, and that works quite well for
my use models)
is where it gets tricky and right at the moment I believe I need policy
based authorisation for keys.
So currently, it doesn't: I have to either run as root or run a udevI'm sure you can implement what you are doing on top of the RM -Lets stick with the user space broker process and just introduceI wouldn't go that far. I'm still planning a userspace tss2
enough kernel RM to enable co-existance with kernel users and
clean -up on crash. This should be enough to make a user space
broker much simpler.
without any access broker daemon, but let's see how far I get on
top of the RM. I think building in stages is a good way to get
actual use experience to guide the next stage.
that isn't a question in my mind.
My question has always been how does your plugin deliver messages to
the kernel RM in a way that does not compromise the security of the
TPM system.
script to give me access to the device, neither of which will work out
of the box for distributions because of the security risks you
identified. I think this is OK for now because the security issue only
has to be sorted out before we make this ready for general release
(i.e. advise the distros how to expose the TPM) and we need to gather
use case data before we do that.