WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Commit 1d757e7

Browse files
Merge pull request #15107 from rabbitmq/mergify/bp/v4.2.x/pr-15104
Coerce the configured OAuth2 resource_server_id to binary to support different data types (backport #15104)
2 parents 3043af9 + 045f99e commit 1d757e7

File tree

2 files changed

+27
-4
lines changed

2 files changed

+27
-4
lines changed

deps/rabbitmq_auth_backend_oauth2/src/rabbit_oauth2_resource_server.erl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ resolve_resource_server_from_audience(Audience) ->
5858

5959
-spec get_root_resource_server_id() -> resource_server_id().
6060
get_root_resource_server_id() ->
61-
get_env(resource_server_id, <<>>).
61+
rabbit_data_coercion:to_binary(get_env(resource_server_id, <<>>)).
6262

6363
-spec get_root_resource_server() -> resource_server().
6464
get_root_resource_server() ->

deps/rabbitmq_auth_backend_oauth2/test/rabbit_oauth2_resource_server_SUITE.erl

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
-include("oauth2.hrl").
1414

1515
-define(RABBITMQ,<<"rabbitmq">>).
16+
-define(RABBITMQ_ATOM,rabbitmq).
1617
-define(RABBITMQ_RESOURCE_ONE,<<"rabbitmq1">>).
1718
-define(RABBITMQ_RESOURCE_TWO,<<"rabbitmq2">>).
1819
-define(OAUTH_PROVIDER_A,<<"A">>).
@@ -30,7 +31,8 @@ all() -> [
3031
].
3132
groups() -> [
3233
{with_rabbitmq_as_resource_server_id, [], [
33-
resolve_resource_server_for_rabbitmq_audience,
34+
resolve_resource_server_for_rabbitmq_audience_with_binary_config_id,
35+
resolve_resource_server_for_rabbitmq_audience_with_atom_config_id,
3436
resolve_resource_server_for_rabbitmq_plus_unknown_audience,
3537
resolve_resource_server_for_none_audience_returns_no_aud_found,
3638
resolve_resource_server_for_unknown_audience_returns_no_matching_aud_found,
@@ -62,7 +64,8 @@ groups() -> [
6264
{verify_configuration_inheritance_with_rabbitmq2, [],
6365
verify_configuration_inheritance_with_rabbitmq2()},
6466
{with_rabbitmq_as_resource_server_id, [], [
65-
resolve_resource_server_for_rabbitmq_audience,
67+
resolve_resource_server_for_rabbitmq_audience_with_binary_config_id,
68+
resolve_resource_server_for_rabbitmq_audience_with_atom_config_id,
6669
resolve_resource_server_id_for_rabbitmq1,
6770
resolve_resource_server_id_for_rabbitmq2
6871
]}
@@ -259,10 +262,30 @@ end_per_group(with_scope_aliases, Config) ->
259262
end_per_group(_any, Config) ->
260263
Config.
261264

265+
init_per_testcase(resolve_resource_server_for_rabbitmq_audience_with_atom_config_id, Config) ->
266+
set_env(resource_server_id, ?RABBITMQ_ATOM),
267+
Config;
268+
269+
init_per_testcase(_any, Config) ->
270+
Config.
271+
272+
end_per_testcase(resolve_resource_server_for_rabbitmq_audience_with_atom_config_id, Config) ->
273+
set_env(resource_server_id, ?RABBITMQ),
274+
Config;
275+
276+
end_per_testcase(_any, Config) ->
277+
Config.
262278

263279
%% --- Test cases
264280

265-
resolve_resource_server_for_rabbitmq_audience(_) ->
281+
resolve_resource_server_for_rabbitmq_audience_with_binary_config_id(_) ->
282+
{ok, RSI} = get_env(resource_server_id),
283+
?assert(erlang:is_binary(RSI)),
284+
assert_resource_server_id(?RABBITMQ, ?RABBITMQ).
285+
286+
resolve_resource_server_for_rabbitmq_audience_with_atom_config_id(_) ->
287+
{ok, RSI} = get_env(resource_server_id),
288+
?assert(erlang:is_atom(RSI)),
266289
assert_resource_server_id(?RABBITMQ, ?RABBITMQ).
267290

268291
resolve_resource_server_for_rabbitmq_plus_unknown_audience(_) ->

0 commit comments

Comments
 (0)