@@ -52,6 +52,8 @@ class TokenTypeError(ValueError):
5252 # so they have to use a generic placeholder anyway.
5353 # The v-team chose to combine two situations into using same placeholder.
5454
55+ _redirect_uri_on_linux = "https://login.microsoftonline.com/common/oauth2/nativeclient"
56+
5557
5658def _convert_error (error , client_id ):
5759 context = error .get_context () # Available since pymsalruntime 0.0.4
@@ -145,20 +147,19 @@ def _build_msal_runtime_auth_params(client_id, authority):
145147 params .set_additional_parameter ("msal_client_ver" , __version__ )
146148 return params
147149
148- def _set_redirect_uri_for_linux (params ):
150+ def _set_redirect_uri (params ):
149151 if sys .platform == "linux" :
150- # This is required by Linux Java Broker to set a non-empty valid redirect_uri
151- params .set_redirect_uri (
152- "https://login.microsoftonline.com/common/oauth2/nativeclient"
153- )
152+ params .set_redirect_uri (_redirect_uri_on_linux )
153+ elif sys .platform == "darwin" :
154+ params .set_redirect_uri (_redirect_uri_on_mac )
154155
155156def _signin_silently (
156157 authority , client_id , scopes , correlation_id = None , claims = None ,
157158 enable_msa_pt = False ,
158159 auth_scheme = None ,
159160 ** kwargs ):
160161 params = _build_msal_runtime_auth_params (client_id , authority )
161- _set_redirect_uri_for_linux (params )
162+ _set_redirect_uri (params )
162163 params .set_requested_scopes (scopes )
163164 if claims :
164165 params .set_decoded_claims (claims )
@@ -248,7 +249,7 @@ def _acquire_token_silently(
248249 if account is None :
249250 return
250251 params = _build_msal_runtime_auth_params (client_id , authority )
251- _set_redirect_uri_for_linux (params )
252+ _set_redirect_uri (params )
252253 params .set_requested_scopes (scopes )
253254 if claims :
254255 params .set_decoded_claims (claims )
0 commit comments