ios 在info.plist中使用msauth配置MSAL,< app_bundle_id>打开Microsoftauthenticator应用程序来验证用户名

vdgimpew  于 2023-05-19  发布在  iOS
关注(0)|答案(1)|浏览(101)

我正在开发一个适用于B2B和其他企业的iOS应用程序,用户可以使用MSAL通过SSO登录。要配置应用程序,我们需要将客户端ID添加到info.plist文件中,这意味着当新业务加入时,我们需要使用新的客户端ID更新info.plist文件,并在AppStore上发布新版本的应用程序。
为了避免这个问题,我修改了info.plist文件中的CFBundleURLSchemes键,添加了msauth.to支持动态客户端ID。<app_bundle_id>此解决方案适用于所有动态客户端ID,除非用户在其iPhone上安装了Microsoft Authenticator应用程序。在这种情况下,应用程序将打开Authenticator应用程序,而不是WKWebView。在Authenticator应用程序中进行身份验证后,它不提供访问令牌,并且回调方法openURL:(NSURL *)url options被调用,URL如下所示: After authentication in the Authenticator app, it does not provide an access token, and the callback method openURL:(NSURL *)url options is called with a URL that looks like this:
msauth.com.://auth/broker?<app_bundle_id>msg_protocol_ver = 3&response = KG5qTOOVgQGuChzrzDKb3_6ZL_xubgdFpz-roV_asaSLv8R9LG0Kw5U44QNhYFm SSN87GTGkrAsaE0M49aYdaLNxqNsLXu9c91fumZyBJWJzsvQhYJY-O97iN5FWooEMHbHE@OrXqzbLaYWy0tiscp7y5XjePlUZODoT6Ye9lNTbRR43Q5x4Bl8tJSFi6079DIJs3bCxrNd@MEs4qst_jfCzHo0cpmzgIWqxabh_FzOduNDbAaIfa0FxFchhJNshDMQ0xd8uduYU45PeesXLDTn9jvc 3RPNK7rMDwOrzhFoZ0Pvc2K44VfcbMaEiXJRj6l0iOonzrnG0hJ0dX6x-iKpA0i2Ql@9WNqeFN2zhssG-RkcAT2p6eybP7R5JpKEYQVed...……我的天msg_protocol_ver=3&response=KG5qTOOVgQGuChzrzDKb3_6ZL_xubgdFpz-roV_asaSLv8R9LG0Kw5U44QNhYFmSSN87GTGkrAsaE0M49aYdaLNxqNsLXu9c91fumZyBJWJzsvQhYJY-O97iN5FWooEMHbHE9OrXqzbLaYWy0tiscp7y5XjePlUZODoT6Ye9lNTbRR43Q5x4Bl8tJSFi6079DIJs3bCxrNdlMEs4qst_jfCzHo0cpmzgIWqxabh_FzOduNDbAaIfa0FxFchhJNshDMQ0xd8uduYU45PeesXLDTn9jvc3RPNK7rMDwOrzhFoZ0Pvc2K44VfcbMaEiXJRj6l0iOonzrnG0hJ0dX6x-iKpA0i2QlH9WNqeFN2zhssG-RkcAT2p6eybP7R5JpKEYQVed.......
如何防止Microsoft Authenticator应用程序在此情况下被打开?

slmsl1lt

slmsl1lt1#

其中一个解决方案是阻止打开Microsoft Authenticator应用程序。

MSALGlobalConfig.brokerAvailability = .none

相关问题