-
Notifications
You must be signed in to change notification settings - Fork 46
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 Request written to keyd.pipe is "not spec compliant" #396
Comments
Being able to configure the target URI for the requests would be nice, too but I assume this is not desired |
So, your setup is:
? And because "process" sends requests without the host header, the proxy rejects them? |
Yes, exactly. |
What is "process" ? One of the aziot-identity-service processes? Something of yours that uses the openssl engine? |
We could make an engine ctrl command to allow setting a custom host in the keyd client that it uses internally. Does dotnet have the ability to call openssl's If dotnet can't do that, we could additionally have some bespoke env var like (And of course, the fallback option of just adding a hard-coded |
Calling openssl functions is not a problem and actually you need to call I'd prefer A fallback would of course be really great too, since that would make everything easier when using 3rd party software like nginx. As for environment maybe we can at some point have an AZIOT_KEY_ENGINE_URL to forward requests to either URL (http://) or UDS (unix://) because then we'd enter sidecare wonderland. But I'm already pretty happy with what the iot-identity-service offers. Great stuff. |
The problem with supporting |
Good points. |
Currently when a request to the keyd socket is written the request looks like this:
This is not a valid HTTP 1.1 request, because it is missing the "Host" header.
While this is not a problem for the normal functionality (provisioning, etc) I've been experimenting with giving an additional container access to the keyd via a sidecar and ran into a problem with our proxy that forwards the requests from the unix domain socket to the sidecar, because it rejects the requests due to being "malformed".
Maybe it would be possible to set
Host: localhost
for the requests?The text was updated successfully, but these errors were encountered: