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

HTTP Support in FulcioClient #682

Open
sabre1041 opened this issue Apr 16, 2024 · 3 comments
Open

HTTP Support in FulcioClient #682

sabre1041 opened this issue Apr 16, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@sabre1041
Copy link

Currently, the FulcioClient communicates via gRPC. While this is acceptable when communicating with the Public Good Instance (prod/staging), gRPC may not be exposed/running in self hosted deployments, rendering the client to being unusable.

Add support for standard HTTP communication to Fulcio which could be implemented as an entirely separate function/method or as a fallback when gRPC is not available

@sabre1041 sabre1041 added the enhancement New feature or request label Apr 16, 2024
@loosebazooka
Copy link
Member

That's interesting, I thought fulcio always enables the grpc endpoint with an http proxy. @bobcallaway? Can you share your config. If it truly makes sense to use http, then we can figure out how to enable this.

@bobcallaway
Copy link
Member

fulcio can be deployed only exposing HTTP, only exposing gRPC, or exposing both:

https://github.com/sigstore/fulcio/blob/d0631526bb70cdf0fbe4dd6aaa33b57d0cd84ec6/cmd/app/serve.go#L101

@loosebazooka
Copy link
Member

Yeah, there was an http client but we removed it since there was no perceived use for it, but that appears to be untrue. Happy to review a PR, but that's kinda low priority for me. Maybe a few steps via separate PRs

  1. Create a FuclioClient interface that both the grpc client and http client would implement.
  2. Revive the HttpClient (and use it the v2 rest api for fulcio -- not v1)
  3. Figure out how to enable this in the KeylessSigner (I don't know if automatic is ideal, maybe just a system property?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants