-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Chrome 72 breaks download #28
Comments
Is there anything that was removed recently that this depended on? https://developers.google.com/web/updates/2018/12/chrome-72-deps-rems |
I've updated to Chrome 72 myself and I can reproduce the issue. What I see happening is Chrome is still trying to create a new download (as is supposed to happen), but then the download fails. I've also verified the actual content of the credentials file is still there using this extra debug line: samltoawsstskeys/background/script.js Lines 221 to 222 in 215fb5e
In other words, the issue is in either of these two lines of code: samltoawsstskeys/background/script.js Lines 223 to 225 in 215fb5e
When I have the time, I'll investigate further and fix it. Suggestions on why chrome 72 breaks this one line of code is welcome of course. |
Quick update: samltoawsstskeys/background/script.js Line 223 in 215fb5e
This goal for this line of code is to create a local 'downloadable' object. The URL that is generated is in the form of This is not working anymore. It does seem to generate the object, as it seems to create an uuid for the object ( I guess all in all we'll have to find an alternate way of pushing the credentials into a file. |
That sounds like a bug with the native createObjectURL or one of the parameters. Do you see a difference its function arguments between chrome 71 vs 72? |
I did some more experiments. There is no difference in the First of all, for anyone who is not aware, the idea behind You can try yourself in the console on any website:
You'll see when you paste the blob URL in any Chrome tab and request the URL, Chrome will download the local blob and show you When you do the same from the extensions console window, the blob URL will be in the format of One thing I noticed when testing this is in an ancient Chrome version is the console prints the blob URL as a URL safe string. That means, So I'm thinking it seems they made a change in Chrome 72 that forbids using the local Blob URL store from within an extension. |
@prolane With your code as basis, I had built a similar extension. The only catch here is that, it supports multiple roles. based on my observation, there is intermittent failure during intercepting saml assertion that is sent to amazonaws.com. I don't think this has anything to do with the download api since my plugin doesn't even receive the assertion. I haven't debugged the plugin yet. However, I will get to it in the next few hours. |
@bob2build That sounds like a different issue to me. For this particular issue I've already confirmed the extension does its job right all the way up to the actual download of the credentials file. I'm now at the point that I'd like to submit a bug report for Chromium or work on an alternate approach. If you found something else that broke in the extension, please create a new issue. P.S. |
I've submitted a bug report for Chromium. Lets first see what that will bring us. https://bugs.chromium.org/p/chromium/issues/detail?id=928307 |
@prolane, you are right. I have 2 different issues, As far as downloading, my download is also broken. Haven't gotten a chance to look at it yet. However, I will follow your bug report for any insights. |
Alright folks, the Chromium team has confirmed its a bug. We'll have to wait for the fix now. Anyone who is looking for a temporary workaround could do the following:
|
The Chromium team fixed the bug and its merged with the stable branch. Just a matter of waiting for the next Chrome release now. |
I'll keep this issue open until the new Chrome release with the fix is available. Just so its easier for other users of the extension to spot this Github issue. |
@prolane , disabled the Network Service and Relaunching chrome didn't work. |
@Ebram-Tharwat No additional steps. Its because the Chrome bug is in the Network Service path. So if you disable the Network Service, you don't face this bug. If its not working for you, then I'm assuming you're facing a different issue. You could check by following this procedure:
This will give you a new window with the console open. Use the extension and see what the error is. |
Hi @prolane 👋 FWIW: can't reproduce this on my MacOS Mojave 10.14.2 with 72.0.3626.81 (Official Build) (64-bit). Every time I log into AWS I download the Also, when I do
|
Heey @ashemedai ! Yeah, we can forget the test I mentioned with requesting The Chrome bug is in the |
Google pushed the new minor version @outlineruler @nitrocode Could you please confirm? |
@prolane Hi, direct collegae of @Ebram-Tharwat, for us, the issue is not fixed with the new bugfix release of Chrome (72.0.3626.96 (Official Build) (64-bit)). I also tried the workaround you mentioned, but didn't fix for me on I'll dig into the Chromium bug, and their bugfix to see if I can find anything else that related. |
Hi @tiesmaster , I didn't hear anything back from @Ebram-Tharwat. Please try the steps I suggested to @Ebram-Tharwat and let me know if the console shows any errors. |
@prolane Just didn't have the issue at all. Colleagues here all seemed to have managed to trip it (see above) except my system. |
Ah I see, @tiesmaster and @Ebram-Tharwat are also colleagues of you @ashemedai. Quite interesting you didn't have this issue at all as there was clearly a bug in Chromium. Maybe the Network Service was somehow disabled for you as the default? Anyway, good for you :-) Unfortunately not so good for your colleagues. My gut feeling says your colleagues are facing a different issue though. |
@prolane the update to Chrome |
@outlineruler How strange. Did the workaround with disabling the Network Service work for you? When I upgraded to Is this also what you see? |
The disabling network-service did not work for me with the previous version or the new update and I do not see the download bar at the bottom of my browser. |
Okay thanks @outlineruler Quite interesting this issue affects a few people, but not everyone.... |
@prolane Ok, this is really weird. This afternoon, I tried to put a breakpoint on L221, in order to at least capture the access key, so I could paste it into the credentials file, however, that never hit. I thought I was doing something wrong in Dev Tools (I'm not a webdev 😜), but this evening I did some more digging, and found out that the registering/deregistering of the listener does break on activation/deactivation of through the popup, however, the Tomorrow, I'll see if I can walk by @ashemedai to see why things are working for him (if he has time for that). Testing here at home, I did with both OSX, and Windows, and both don't work for me, so doesn't seem to be related to platforms. |
@tiesmaster Thats interesting. So you're saying these lines of code are probably not working for you anymore? samltoawsstskeys/background/script.js Lines 37 to 41 in dafc132
This is where the Listener is added for the |
For those of you for which the extension isn't working yet, there is a new version of the extension: version Then do the following:
|
Followed the above steps but I am not getting much in the log other than the initialization of the extension. I am using Duo to auth. It seems like the extension is not getting triggered after I pass the auth challenge and am redirected to AWS.
|
Okay, thanks @outlineruler For testing purposes, you could enable the extension and then just request the url While searching for open Chromium issues on the
I've done some experiments and it seems to me that My hypothesis is people that are allowed to assume more than 1 AWS role can still successfully use the extension. The difference here is that those people will first see an AWS webpage asking them to select the role they want to assume. This page is also hosted on the url I'm pretty convinced about this hypothesis as I can actually reproduce this behaviour. I have multiple roles to assume myself, but I should still see the As the url of the SAML endpoint (IDP) will be different for every company, it makes no sense anymore to request permission to only I'll change the extension to ask the user permission for accessing any url. Again, I'm not in favor, but I think its the only way. |
I've pushed version |
@prolane I confirm that I get the 3rd DEBUG line when following the steps. I'll give the new version a try when my browser updates. |
The new version has solved the issue and the credentials file is downloading now. Thanks! |
Awesome. Thanks for reporting the issue. |
@prolane I've also validated the fix 🎉 Time for 🍺 Thanks for digging into this in more detail, and the extensive explanation behind this issue 👍 |
Great! Glad to hear that! 👍 |
I also confirm that the updated version of the extension(2.7) for chrome 72.0.3626.96 works correctly |
I am using Chrome Version 72.0.3626.81 (Official Build) (64-bit) and immediately after the upgrade the credentials download stopped working. I attempted to pull logs from the extension console using instructions listed in previous issues of this kind but there is not any output.
The text was updated successfully, but these errors were encountered: