chrome.identity.launchWebAuthFlow fails to reach callback with CAC certs enabled on OS
Reported by
isne...@gmail.com,
Oct 16 2017
|
||||||||||||
Issue description
UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
Steps to reproduce the problem:
1. Add a CAC Certificate to the OS keychain
2. Create an extension with all of the following permissions specified in the manifest: tabs, <all_urls>, downloads, storage, identity, webNavigation
3. In the extension's background script, make a call to `chrome.identity.lauchWebAuthFlow` with the following arguments: interactive = true, url = https://{VALID_AUTH_URL}&redirect_uri=https://{EXTENSION_ID}.chromiumapp.org/oauth2
What is the expected behavior?
`chrome.identity.lauchWebAuthFlow` should cause a new window to launch, displaying the response to the original request
What went wrong?
1. No new window is launched.
2. The main process outputs the following error: `NSWindow warning: adding an unknown subview: <WebContentsViewCocoa: 0x7f948435d590>. Break on NSLog to debug.`
with the following call stack:
0 AppKit 0x00007fff9487baed -[NSThemeFrame addSubview:] + 109
1 Google Chrome Framework 0x000000010ffc3036 ChromeMain + 69694502
2 Google Chrome Framework 0x000000010ffc2983 ChromeMain + 69692787
3 Google Chrome Framework 0x000000010ffc1d9a ChromeMain + 69689738
4 Google Chrome Framework 0x000000010c84ea17 ChromeMain + 11546119
5 Google Chrome Framework 0x000000010c8fa608 ChromeMain + 12249592
6 Google Chrome Framework 0x000000010c86dcaf ChromeMain + 11673759
7 Google Chrome Framework 0x000000010c87039b ChromeMain + 11683723
8 Google Chrome Framework 0x000000010c86fee7 ChromeMain + 11682519
9 Google Chrome Framework 0x000000010c88d296 ChromeMain + 11802246
10 Google Chrome Framework 0x000000010c88d18d ChromeMain + 11801981
11 Google Chrome Framework 0x000000010f9c75a2 ChromeMain + 63420818
12 Google Chrome Framework 0x000000010c6dbcfd ChromeMain + 10027245
13 Google Chrome Framework 0x000000010c4494b0 ChromeMain + 7329952
14 Google Chrome Framework 0x000000010da4aeab ChromeMain + 30405275
15 Google Chrome Framework 0x000000010d7e2ba2 ChromeMain + 27881362
16 Google Chrome Framework 0x000000010d808f3b ChromeMain + 28037931
17 Google Chrome Framework 0x000000010d809325 ChromeMain + 28038933
18 Google Chrome Framework 0x000000010d8095f9 ChromeMain + 28039657
19 Google Chrome Framework 0x000000010d80ca7a ChromeMain + 28053098
20 Google Chrome Framework 0x000000010d7fcc2a ChromeMain + 27987994
21 Google Chrome Framework 0x000000010d80c39f ChromeMain + 28051343
22 CoreFoundation 0x00007fff96d88321 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
23 CoreFoundation 0x00007fff96d6921d __CFRunLoopDoSources0 + 557
24 CoreFoundation 0x00007fff96d68716 __CFRunLoopRun + 934
25 CoreFoundation 0x00007fff96d68114 CFRunLoopRunSpecific + 420
26 HIToolbox 0x00007fff962c8ebc RunCurrentEventLoopInMode + 240
27 HIToolbox 0x00007fff962c8cf1 ReceiveNextEventCommon + 432
28 HIToolbox 0x00007fff962c8b26 _BlockUntilNextEventMatchingListInModeWithFilter + 71
29 AppKit 0x00007fff94861a54 _DPSNextEvent + 1120
30 AppKit 0x00007fff94fdd7ee -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796
31 Google Chrome Framework 0x000000010d3f2ea0 ChromeMain + 23753360
32 Google Chrome Framework 0x000000010d7fcc2a ChromeMain + 27987994
33 Google Chrome Framework 0x000000010d3f2de4 ChromeMain + 23753172
34 AppKit 0x00007fff948563db -[NSApplication run] + 926
35 Google Chrome Framework 0x000000010d80d2ae ChromeMain + 28055198
36 Google Chrome Framework 0x000000010d80bcac ChromeMain + 28049564
37 Google Chrome Framework 0x000000010d82eb53 ChromeMain + 28192579
38 Google Chrome Framework 0x000000010d3f8d46 ChromeMain + 23777590
39 Google Chrome Framework 0x000000010c333e14 ChromeMain + 6193668
40 Google Chrome Framework 0x000000010c3364d2 ChromeMain + 6203586
41 Google Chrome Framework 0x000000010c32fe9c ChromeMain + 6177420
42 Google Chrome Framework 0x000000010d3af5d0 ChromeMain + 23476672
43 Google Chrome Framework 0x000000010ecd2be4 ChromeMain + 49835988
44 Google Chrome Framework 0x000000010d3aebb4 ChromeMain + 23474084
45 Google Chrome Framework 0x000000010bd4bcb8 ChromeMain + 168
46 Google Chrome 0x0000000105390dd4 main + 404
47 libdyld.dylib 0x00007fffac4f0235 start + 1
48 ??? 0x0000000000000002 0x0 + 2
3. The main process outputs the following error: `Connection InterfaceProviderSpec prevented service: content_browser from binding interface: extensions::mojom::AppWindow exposed by: content_renderer`
Did this work before? N/A
Does this work in other browsers? N/A
Chrome version: 61.0.3163.100 Channel: stable
OS Version: OS X 10.12.6
Flash Version:
,
Oct 16 2017
,
Oct 17 2017
,
Oct 17 2017
@Reporter: Could you please provide a sample extension to triage the issue further. Thanks!
,
Oct 17 2017
I've attached a sample extension. Enter a valid authentication url in the field labeled "Keycloak URL" and click "SSO Login".
,
Oct 17 2017
Thank you for providing more feedback. Adding requester "vamshi.kommuri@techmahindra.com" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 24 2017
Tried a repro of this with the extension attached in C#5 but not seeing any field labeled 'Keycloak URL'. Attached is the screenshot of the same. isnerms@: Could you please take a look at the attached extension. Thank you!
,
Oct 24 2017
The 'Keycloak URL' field can be found in the devtool panel added to the Chrome devtools by the extension. Please see the attached screenshot. This particular extension doesn't use a popup view.
,
Oct 24 2017
Thank you for providing more feedback. Adding requester "ajha@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 25 2017
Tested the issue in MacBook Pro (Retina, 15-inch, Mid 2014), 10.12.6 using chrome reported version #61.0.3163.100 and latest canary #64.0.3249.0. Following are the steps followed to reproduce the issue. ------------ 1. Added the extension to chrome provided in comment #5. 2. Navigated to dev tools and clicked on deque tab. 3. Entered https://www.facebook.com in the field labeled "Keycloak URL" and clicked "SSO Login". 4. Did not observe anything in the chrome reported version #61.0.3163.100(Attached a screen cast for the same) but observed error in latest canary as in the attached screenshot. isnerms@ - Could you please check the screencast and please let us know if anything missed from our side. Also please provide a sample valid authentication url to be filled in the field labeled "Keycloak URL". Thanks...!!
,
Oct 25 2017
krajshree@ - I'm looking into this right now. I'll get back to you as soon as I can. Thanks!
,
Oct 25 2017
Thank you for providing more feedback. Adding requester "krajshree@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 25 2017
Try the following: ------------- 1. On the chrome://extensions page, find the Deque Test Extension and click 'background page' next to 'Inspect views:' 2. Open the devtools panel and navigate to the 'Deque' tab 3. Enter 'https://sso.dequelabs.com/auth/' into the Keycloak URL field and click the 'SSO Login' buttton 4. Note the logged message in the background console which begins with the text "launchWebAuthFlow called with url..." This message comes from line 209 of dist/background.js in the extension's source code. Note that the next line in that file calls `chrome.identity.launchWebAuthFlow`, whose callback contains another log message which is never reached. My problem is that the the interactive identity window is never launched.
,
Oct 26 2017
Able to reproduce the issue on Windows 7, mac 10.12.6 mac book air & Ubuntu 14.04 using chrome reported version-61.0.3163.100,stable-62.0.3202.62 & canary-64.0.3250.0 as per steps provided in C#0,5 & 13. After step#4 in C#13,No new windows launched.Same issue observed from M50 to latest Canary.As it is a non regression issue,marking it as Untriaged to get more inputs from dev. Please find the attached screencast for reference. Thanks..!
,
Oct 26 2017
Thanks, jmukthavaram@ !
,
Oct 27 2017
-> msarda@ for identity triage
,
Oct 31 2017
isnerms@gmail.com: Thank you for the the detailed test case.
,
Oct 11
Sorry for replying so late on this bug, but I cannot repro it anymore on Canary 71. Was it fixed by new release of Chrome?
,
Oct 15
|
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by isne...@gmail.com
, Oct 16 2017