Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: vault authenticator #88

Closed
ghost opened this issue Jul 14, 2018 · 8 comments
Closed

Feature request: vault authenticator #88

ghost opened this issue Jul 14, 2018 · 8 comments

Comments

@ghost
Copy link

ghost commented Jul 14, 2018

I currently use Vault from hashicorp and it's pretty good.

It seems to make slot of sense to support Vault as an Authenticator for Key system.

I don't know enough about the details of oxy system to suggest the exact interface connections though. Maybe you do.

The reasoning for keeping vault is because users can request access to a resource if they need it and the vault system provides admin ticketing. Also of course it provides the secure storage.

Anyway happy to discuss

@aeneasr
Copy link
Member

aeneasr commented Jul 14, 2018

Interesting idea, could you walk me through how vault works and how tokens/keys are validated at vault?

@ghost
Copy link
Author

ghost commented Jul 14, 2018 via email

@aeneasr
Copy link
Member

aeneasr commented Jul 14, 2018

Yes, but it seems to me like it's storing access credentials and gives them out based on other credentials issued by vault, I'm not sure if it also allows verification of the stored access credentials as it is agnostic to them. It would be great if you could go into some detail (maybe particular flows or APIs), this would help a lot in understanding why vault would make sense as an authorization server coupled to oathkeeper.

@ghost
Copy link
Author

ghost commented Jul 14, 2018 via email

@ghost
Copy link
Author

ghost commented Jul 14, 2018 via email

@aeneasr
Copy link
Member

aeneasr commented Jul 14, 2018

Oxy provides a gateway but you must have a place to store the enterprise multi tenant ( iaas level and pass etc) secrets and check them, roll them and revoke them.

I do understand that you can fetch credentials from vault, but those credentials are to be validated at a different endpoint. Typically you would, for example, store an API key in vault, fetch the API key from vault using some credentials, then use that API key at another endpoint. That endpoint validates the API key.

This proxy takes, for example, an API key and asks some endpoint if the API key is valid. In this regard, vault does (to my understanding) not play a role. It might be possible to first fetch the key from vault, then use it at Oathkeeper, and Oathkeeper validates it at another endpoint. To Oathkeeper itself however, it doesn't matter at all how the credentials were obtained and thus an integration with vault does not make sense.

Let me know if I blatantly misunderstood something, but I don't see how the integration would look like. That is why I asked for specifics on this matter.

@ghost
Copy link
Author

ghost commented Jul 15, 2018 via email

@aeneasr
Copy link
Member

aeneasr commented Jul 22, 2018

I took some time yesterday to look through the docs and wasn't able to figure out a way to make a useful integration. I'm thus closing this issue. Regardless, thank you for your ideas & time. If I missed something please let me know and I'll immediately reopen the issue, I think integration with vault would be amazing.

@aeneasr aeneasr closed this as completed Jul 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant