mirror of
https://github.com/nspcc-dev/neofs-sdk-go.git
synced 2026-03-01 04:29:18 +00:00
Autoresolve grpcs scheme for port 443 #243
Labels
No labels
I2
I3
I4
S1
S2
S3
S4
U0
U1
U2
U2
U2
U3
U4
blocked
bug
client
config
discussion
documentation
enhancement
epic
feature
go
good first issue
help wanted
performance
pool
question
security
task
test
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nspcc-dev/neofs-sdk-go#243
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @cthulhu-rider on GitHub (Dec 4, 2024).
Is your feature request related to a problem? Please describe.
Clientuses insecuregrpcscheme when scheme is missing in the address parameter. Port443is reserved forhttp protocol over TLS/SSL. For users, it would be easier if conn scheme defaulted togrpcsfor addresses with this port cuz it's easier to forget the scheme than desire to try dial it insecurelyDescribe the solution you'd like
when port is
443, make a TLS dialDescribe alternatives you've considered
no
Additional context
https://github.com/nspcc-dev/neo-go/issues/3721
@roman-khimov commented on GitHub (Dec 4, 2024):
Really questionable. Admins can do all sorts of weird things. You don't know if 443 is TLS or not in any particular scenario. Normally it is. But some can find reasons to do otherwise. Schemes are exactly for that, http/https, grpc/grpcs. If we were talking about the default port when it's not specified, that'd be a different story, there are known good ones to use. But when it's specified without a scheme you have to resort to the default scheme which is not using TLS.
@532910 commented on GitHub (Dec 5, 2024):
I'd prefer to have 443 as a default: grpcs://st1.storage.fs.neo.org
@cthulhu-rider commented on GitHub (Dec 5, 2024):
exactly, this is where defaults fit well, which should make life easier in real practice
ofc, but this is much more rare case tbh. For them, it is worth explicitly specifying the scheme
i like this too. In total, I'd expect following resolution:
host:443->grpcs://host:443grpcs://host->grpcs://host:443this would cover most practical cases and reduce the likelihood of random mistake
i can also agree with @roman-khimov opinion cuz
curldoes not use HTTPS by default for 443browsers' behavior vary: Chrome uses HTTPS while Firefox does not
@532910 commented on GitHub (Dec 5, 2024):
Firefox also uses https by default
@cthulhu-rider commented on GitHub (Dec 6, 2024):
yeah, but if hostname is used, ip:443 uses http
@532910 commented on GitHub (Dec 6, 2024):
indded, I have enabled
Enable HTTPS-Only Mode in all windowswhich is disabled by default