-
Notifications
You must be signed in to change notification settings - Fork 5
Closed
Labels
developmentStandard developmentStandard developmentr&d:polykey:core activity 1Secret Vault Sharing and Secret History ManagementSecret Vault Sharing and Secret History Management
Milestone
Description
Specification
- Session Management is the matter of acquiring an authenticated session for the PK CLI/GUI against the PK agent
- It should work for multiple clients connecting to the agent
- It should work over the network
- It should be integrated into our GRPC client service
- We should be able to create and destroy our own session
- And we should be able to destroy all other client's session
- Sessions don't represent separate users to the PK agent, they are currently just different uses of the same PK agent
- We may be able to extend sessions to deal with OAuth2 and HTTP API Third Party Integration - HTTP API, OAuth2 Provider API, Plugin API, Library vs Framework, Smart Tokens #166
- We should educate the user on using the CLI with one space ahead of the command to avoid saving it in the CLI somehow (how should this education be done), it needs to be mentioned in all our docs
- Repeated runs of authenticated command should refresh the session expiry
Additional context
This is all done as part of client-refactoring for now.
Tasks
- Understand that there should be 3 input methods: parameter, prompt with EOF CTRL+D, and file descriptor
- Use all 3 input methods to allow root password to be used to authenticate a session
- Specify and test
pk agent unlock- for authenticating a session for the CLI- Allow all 3 input methods to be used here
- Specify and test
pk agent lock- for destroying the current session for the CLI (delete client's session token) - Specify and test
pk agent lockall- for changing the session key and ensuring that all sessions should be made invalid - All other commands should expect to be authenticated, and if not authenticated, an exception is thrown from the agent, and the client must then acquire the password using the prompt method, and then retry the previous operation after the prompt works
- Integrate lockfile mechanism to the session token to avoid clobbering during session refresh
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
developmentStandard developmentStandard developmentr&d:polykey:core activity 1Secret Vault Sharing and Secret History ManagementSecret Vault Sharing and Secret History Management