microsoft / azure-devops-intellij

IntelliJ IDEA plug-in for Visual Studio Team Services and Team Foundation Server (TFS)
MIT License
149 stars 94 forks source link

Cannot use username/password authentication #547

Open caveman-dick opened 1 year ago

caveman-dick commented 1 year ago

For some reason, even though I have username/password authentication enabled:

image

It only prompts for devicelogin:

image

I've tried switching to devicelogin and back again but this doesn't seem to do anything....

Weirdly this is happening in webstorm but not in rider and both have the same version installed!

samalpher commented 1 year ago

I have this same issue in Rider.

Plugin version 1.162.2 Rider version 2023.1.1

samalpher commented 1 year ago

In Idea, I see the following stack trace:

` getAuthenticationInfoAsync failed

com.microsoft.alm.plugin.exceptions.TeamServicesException: KEY_VSO_AUTH_FAILED at com.microsoft.alm.plugin.authentication.facades.VsoAuthInfoProvider.getAuthenticationInfoAsync(VsoAuthInfoProvider.java:100) at com.microsoft.alm.plugin.authentication.VsoAuthenticationProvider.authenticateAsync(VsoAuthenticationProvider.java:66) at com.microsoft.alm.plugin.idea.common.ui.common.LookupHelper.authenticateAndLoadVsoContexts(LookupHelper.java:158) at com.microsoft.alm.plugin.idea.common.ui.checkout.VsoCheckoutPageModel.loadRepositories(VsoCheckoutPageModel.java:79) at com.microsoft.alm.plugin.idea.common.ui.checkout.CheckoutPageController.actionPerformed(CheckoutPageController.java:92) at com.microsoft.alm.plugin.idea.common.ui.controls.Hyperlink.notifyActionListeners(Hyperlink.java:66) at com.microsoft.alm.plugin.idea.common.ui.controls.Hyperlink$1.linkSelected(Hyperlink.java:31) at com.intellij.ui.components.labels.LinkLabel.doClick(LinkLabel.java:175) at com.intellij.ui.components.labels.LinkLabel.doClick(LinkLabel.java:389) at com.intellij.ui.components.labels.LinkLabel$MyMouseHandler.mouseReleased(LinkLabel.java:362) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6656) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3385) at java.desktop/java.awt.Component.processEvent(Component.java:6421) at java.desktop/java.awt.Container.processEvent(Container.java:2266) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5026) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4854) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2804) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4854) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:790) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:731) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:763) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:761) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:760) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:666) at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:614) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:569) at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:68) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:349) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:348) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:348) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:343) at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:994) at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105) at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:994) at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$4(IdeEventQueue.kt:343) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:385) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:121) at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191) at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236) at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234) at java.base/java.security.AccessController.doPrivileged(AccessController.java:318) at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234) at java.desktop/java.awt.Dialog.show(Dialog.java:1080) at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:741) at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:466) at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1675) at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1633) at com.intellij.openapi.ui.DialogWrapper.showAndGet(DialogWrapper.java:1647) at com.microsoft.alm.plugin.idea.common.ui.common.BaseDialogImpl.showModalDialog(BaseDialogImpl.java:192) at com.microsoft.alm.plugin.idea.common.ui.checkout.CheckoutController.showModalDialog(CheckoutController.java:75) at com.microsoft.alm.plugin.idea.git.extensions.GitCheckoutProvider.doCheckout(GitCheckoutProvider.java:39) at com.intellij.openapi.vcs.ui.VcsCloneComponentStub.doClone(VcsCloneComponentStub.kt:34) at com.intellij.util.ui.cloneDialog.RepositoryUrlCloneDialogExtension$RepositoryUrlMainExtensionComponent.doClone(RepositoryUrlCloneDialogExtension.kt:100) at com.intellij.util.ui.cloneDialog.VcsCloneDialog.doClone(VcsCloneDialog.kt:85) at com.intellij.openapi.wm.impl.welcomeScreen.GetFromVersionControlAction.actionPerformed(GetFromVersionControlAction.kt:52) at com.intellij.openapi.actionSystem.ex.ActionUtil.doPerformActionOrShowPopup(ActionUtil.java:333) at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:307) at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:356) at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:307) at com.intellij.openapi.wm.impl.welcomeScreen.WelcomeScreenActionsUtil.performAnActionForComponent(WelcomeScreenActionsUtil.java:102) at com.intellij.openapi.wm.impl.welcomeScreen.WelcomeScreenActionsUtil$ToolbarTextButtonWrapper$1.actionPerformed(WelcomeScreenActionsUtil.java:57) at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6656) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3385) at java.desktop/java.awt.Component.processEvent(Component.java:6421) at java.desktop/java.awt.Container.processEvent(Container.java:2266) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5026) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4854) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2804) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4854) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:790) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:731) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:763) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:761) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:760) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:666) at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:614) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:569) at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:68) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:349) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:348) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:348) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:343) at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:994) at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113) at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:994) at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$4(IdeEventQueue.kt:343) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:385) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

`

Plugin version 1.62.2 Idea version 2023.1.1

jjulicherqic commented 10 months ago

I have the same issue.

jopebw commented 8 months ago

I also have exactly the same problem - this issue was opened in January - still no progress??

jjulicherqic commented 8 months ago

The MS servers seem to have lost the SWT jar file that it was previously downloading.

So there is a workaround - install the latest Eclipse IDE. Looking through the code you can see it wants to load the SWT jar.

So in VM Options add the following:

-cp C:\[eclipse install dir]\plugins\org.eclipse.swt.win32.win32.x86_64_3.124.0.v20230523-1044.jar -DSWT_RUNTIME_JAR_PATH=C:\[eclipse install dir]\plugins\org.eclipse.swt.win32.win32.x86_64_3.124.0.v20230523-1044.jar

ensure that the version number is correct for the jar file. This will then give you the user/password login prompt.

jopebw commented 8 months ago

I have tried that in Windows WSL - using the jar file from Eclipse for Linux - but it doesn't work. Issue remains the same.

jjulicherqic commented 8 months ago

Yeah that solution was for windows only. Not sure how to do it in WSL.

mario-d-s commented 8 months ago

Same here, it only lets me use the device code auth flow...

mario-d-s commented 7 months ago

I finally have a workaround:

  1. Download the SWT JAR for your platform here: https://download.eclipse.org/eclipse/downloads/drops4/R-4.30-202312010110/#SWT
  2. Save it as $HOME/.swt/swt-x86_64.jar, replacing x86_64 with x86 if you're on 32-bit (which would be surprising).

This is basically the equivalent of what the downloader is trying to do.

I raised an issue to flag the broken URL: microsoft/vsts-authentication-library-for-java#48

jopebw commented 7 months ago

Unfortunately that does not work for me. I have tried it on WSL and I still get the device-login flow....

SKUD201 commented 2 months ago

I finally have a workaround:

  1. Download the SWT JAR for your platform here: https://download.eclipse.org/eclipse/downloads/drops4/R-4.30-202312010110/#SWT
  2. Save it as $HOME/.swt/swt-x86_64.jar, replacing x86_64 with x86 if you're on 32-bit (which would be surprising).

This is basically the equivalent of what the downloader is trying to do.

I raised an issue to flag the broken URL: microsoft/vsts-authentication-library-for-java#48

Thanks a LOT @mario-d-s I managed to bypass the issue thanks to you ! Hope that someone at MS reacts to the issue you opened but after 4 months it's disappointing.