-
Notifications
You must be signed in to change notification settings - Fork 126
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
Support using non-2FA accounts #139
Comments
Hey @thii! Thanks for opening this issue. As I understand it this change will only affect non-2FA accounts, and so one workaround would be to use an account that uses 2FA. This might not be an option for some fastlane use cases, which is understandable. This also might not be an option for xcodes when it's being automated, but I'm not sure how many people are in this situation. To be clear, is this a hypothetical situation for you right now, or is this blocking your use of xcodes in a way that you can't work around? Please share as much detail as you can so that I can better understand. I'd like xcodes to be as easy to use for as many people as possible, but I'm hesitant to add a workaround for this if it'll be obsolete very soon or if there's a reasonable workaround. Given this might just be delaying the inevitable, perhaps there's a better solution that we should look into? |
I'm facing same situation too. fastlane/fastlane#18116 is great work, but it is work around. I hope xcodes developers will add the same feature as the Fastlane's work around. But if they decide not to implement that workaround, I will respect them. |
@interstateone Thanks for the explanation. I totally understand the hesitation. Our use-case is being able to unattended install Xcode on our build workers, which wouldn't be possible if we use a 2FA account. |
Thanks for elaborating @Kesin11 and @thii. At this point I'm not sure that we (mostly meaning me, but also Robots and Pencils) will have time to implement this workaround, but we'd be open to merging a PR that implemented it. It might also be worth considering how you would handle this if Apple does actually enforce 2FA. For example, using |
@interstateone It seems good. I considered other options yesterday, finally I decided to install Xcode manually with 2FA to each build agent using xcodes 😃 |
Since this is actually a feature request now, I rephrased the issue title. |
Well guys I got a quick workaround for this. Step 1 : Get widget key This thing is already used by you guys in the 2FA auth so nothing new. But mentioning here to be systematic. Step 2 : Login
Here you need to keep the cookies returned in response . The most important ones are Step 3 : Done with Login ! Request ADCDownloadAuth
Request body should be empty and all the cookies (at least those 3 mentioned in previous step) should be sent using the Also the header The response will contain the ADCDownloadAuth Cookie in one of its P.S. : This may stop to work in future when Apple enforces 2FA on everyone. I've tested this on five different accounts. |
@interstateone tagging you so that you look at it. |
Command line cURL version of my comment . /bin/bash read -p "Enter your Apple ID username : " ASID && read -sp "Enter your Apple ID Password : " PASS && curl --location --data "appIdKey=e0b80c3bf78523bfe80974d320935bfa30add02e1bff88ec2166c6bd5a706c42&appleId=$ASID&accountPassword=$PASS" "https://idmsa.apple.com/IDMSWebAuth/authenticate" --cookie-jar ./login.txt --output /dev/null && curl --location --cookie-jar ./adc.txt --cookie login.txt https://developer.apple.com/services-account/QH65B2/downloadws/listDownloads.action -X POST -H "Content-Length: 0" --output /dev/null && rm login.txt && cat adc.txt
|
Xcodes 1.0 can now download Xcode without having a username and password 🥳 Closing as now support non-2FA accounts 😝 |
@MattKiazyk EDIT: Got my answer |
If you install Xcodes 1.0 it won't prompt you for your Apple username and password. It will just download Xcode. |
@MattKiazyk @thispsj Hi, I am running Xcodes |
A recent change in Apple's 2FA a few days ago breaks xcodes' authentication.
fastlane works around it by allowing to opt-in to skipping 2FA upgrade by setting
SPACESHIP_SKIP_2FA_UPGRADE=1
: fastlane/fastlane#18116.The text was updated successfully, but these errors were encountered: