Skip to content

RabbitMQ transport mistakenly rejects HTTPS URL #4901

@isaaccommit

Description

@isaaccommit

Symptoms

The following exception is thrown when an instance is started:

System.NotSupportedException: URL scheme 'https' is not supported for the RabbitMQ management API URL. Valid schemes are 'http' and 'https'.

Who's affected

Anyone using the RabbitMQ transport and setting the ManagementApiUrl connection string option to a URL with an https scheme.

Root cause

There was a bug in the RabbitMQ transport that prevented https URLs from being considered valid.

Backported to

Original bug report

Describe the bug

Description

The connection string option ManagementApiUrl does not support HTTPS. This connection string option follows the format of SCHEME://HOST:PORT. However, if you specify HTTPS, it will fail, despite the error message stating that "https" is a valid scheme. The issue is not with the connection string; if you specify HTTP as the scheme, it will not throw the same error message.

Expected behavior

HTTPS can be specified as the scheme.

Actual behavior

Unhandled exception. System.NotSupportedException: URL scheme 'https' is not supported for the RabbitMQ management API URL. Valid schemes are 'http' and 'https'.

Versions

6.5.0

Steps to reproduce

  • Launch a container with image particular/servicecontrol, particular/servicecontrol-audit, or particular/servicecontrol-monitoring
  • In your CONNECTIONSTRING environment variable, specify HTTPS as your scheme in ManagementApiUrl.

Relevant log output

Unhandled exception. System.NotSupportedException: URL scheme 'https' is not supported for the RabbitMQ management API URL. Valid schemes are 'http' and 'https'.

Additional Information

Workarounds

Possible solutions

Additional information

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions