Open dm-dma opened 3 weeks ago
Hello, your analysis is right. Although the server tries to provide a protocol-independent set of features, sometimes it happens that a specific feature is not compatible with a certain protocol. JWTs are the standard way to authenticate requests without continuously polling an identity server, and supporting them has provided lots of benefits, but evidently they cannot be used with SRT. There isn't an easy solution for this.
Which version are you using?
v1.8.2
Which operating system are you using?
Describe the issue
In order to send the JWT token using SRT when JWT authentication is enabled, the JWT token is a part of the stream ID: srt://x.x.x.x:8890?streamid=publish:mystream:jwt=[token]
The issue with this implementation is that the streamid may only contain 512 characters. We created a token with almost the bare minimum but ended up with 685 characters: https://github.com/Haivision/srt/blob/master/docs/features/access-control.md
So technically this is not a bug and this is SRT related. But this leaves us with an implementation that is unusable, or is there another way to pass JWT tokens?
Describe how to replicate the issue
publish with ...
ERROR #5003.0: Operation not supported: Bad parameters SrtCommon: DESTROYING CONNECTION, closing sockets (rt%310547703 ls%-1)... SrtCommon: ... done. ERROR: error: ConfigurePre: Operation not supported: Bad parameters