Comments (3)
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.
@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.
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)
- Android FR: Enable zoom without displaying on-screen zoom controls
- Calling window.print() does not work
- Keychain not work with inappbrowser HOT 1
- Disable close button (Done) for iOS
- InAppBrowser does not open Youtube Links Properly HOT 12
- The preference name "MediaPlaybackRequiresUserAction" has been deprecated. It is recommended to replace this preference with "MediaTypesRequiringUserActionForPlayback."
- When can we expect latest 6.0.0 version release on npm? HOT 1
- The www/inappbrowser.css file should be removed because it was only for the Windows platform HOT 1
- Cannot build iOS Ionic Capacitor project HOT 5
- 6.0.0 Update throws error while archiving iOS project: "'Cordova/CDVWebViewProcessPoolFactory.h' file not found" HOT 1
- "browser.on('loaderror')" does not work properly on iOS.
- executeScript not working in colab HOT 4
- How to build this plugin for node_modules? HOT 2
- Add option to respect/ignore safe area on iOS
- ref.executeScript can't write clipboard HOT 5
- window.open doesnt work inside the opened webview HOT 2
- Warning when submitting to play store - JavaScript Interface Injection HOT 3
- Angular 15 webpage not loading correctly in inappbrowser (Android < 11) HOT 1
- Hide Location & toolbar on scroll
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cordova-plugin-inappbrowser.