Giter Site home page Giter Site logo

@awesome-cordova-plugins/in-app-browser, this plugin is not sending the device id to azure while login + iOS about cordova-plugin-inappbrowser HOT 3 CLOSED

RonCocoa avatar RonCocoa commented on May 25, 2024
@awesome-cordova-plugins/in-app-browser, this plugin is not sending the device id to azure while login + iOS

from cordova-plugin-inappbrowser.

Comments (3)

breautek avatar breautek commented on May 25, 2024

Moved this to the inappbrowser repo since the issue is asking about this plugin, @awesome-cordova-plugins/in-app-browser, appears to be just a typescript def into this plugin.

We are using Azure AD provider for login with next auth js. and the In app browser does not send the device id to the Azure Active Directory. Due to that we are unable to find out the device compliances.

The in-app browser's responsibility is to open up a remote/third-party web page. So I'm a bit confused on what you mean by the device id and why the in-app-browser should "send" it. System level device ids on modern devices are also blocked and not readable without special privileges which only system apps would have.

If the device id is something you generate and manage yourself (via your own code, or through azure AD) then it would the app's responsibility to propagate that id, in which case you should have code doing so. Can you provide some sample code on that you expect to work?

from cordova-plugin-inappbrowser.

RonCocoa avatar RonCocoa commented on May 25, 2024

@breautek, When we use the Capacitor's browser instead of the InAppBrowser for the authentication library, we observe that the compliance status of the device is obtained. However, when using the InAppBrowser, we do not receive this compliance status.

from cordova-plugin-inappbrowser.

breautek avatar breautek commented on May 25, 2024

I think that's because capacitor's browser uses SFSafariViewController behind the scenes.

Which is similar to an embedded webview but with far more restrictions. These restrictions however makes it safer for OAuth usage. The inappbrowser plugin uses WKWebView for legacy reasons, it's configured in such a way that it doesn't have access to the cordova bridge making it safe to load in untrusted content, but it has APIs for the host app to inject content into the loaded document, breaching trust for OAuth service providers, which I suspect is related to your compliance status. Many OAuth providers started blocking OAuth usage from embeddable webviews like WKWebView and android's Webkit webview.

There are no plans to implement Safari View Controller in this plugin because it would destroy a lot of features that other users rely on, but there is a community plugin available cordova-plugin-safariviewcontroller that does implement the Safari View Controller. Despite the name, it also supports Chrome Tabs for android, which is android's direct equivalent feature to iOS's Safari View Controller. I've haven't used this plugin myself, but it sounds like the exact thing you need if Capacitor's module doesn't work on Cordova.

from cordova-plugin-inappbrowser.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.