Skip to content
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

Challenge selection fix #1286

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
182 changes: 182 additions & 0 deletions pkg/provider/googleapps/example/challenge-selection.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,182 @@
<!doctype html>
<html lang="en-US" dir="ltr">
<head>
<base href="https://accounts.google.com/v3/signin/">
<link ref="preconnect" href="//www.gstatic.com">
<meta name="referrer" content="origin">
<link rel="canonical" href="https://accounts.google.com/v3/signin/challenge/selection">
<meta name="chrome" content="nointentdetection">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<noscript>
<meta http-equiv="refresh" content="0; url=/v3/signin/rejected?continue=https://accounts.google.com/o/saml2/initsso?idpid%3DXXXXXX%26spid%3DYYYYYY%26forceauthn%3Dfalse%26hl%3Den%26loc%3DUS&amp;dsh=xxxxxx:yyyyyy&amp;faa=1&amp;flowEntry=ServiceLogin&amp;flowName=WebLiteSignIn&amp;followup=https://accounts.google.com/o/saml2/initsso?idpid%3DXXXXXX%26spid%3DYYYYYY2%26forceauthn%3Dfalse%26hl%3Den%26loc%3DUS&amp;hl=en_US&amp;ifkv=ABCDEFGHIJKLMNOPQRSTUVWXYZ?hl%3Den?hl%3Den&amp;rhlk=js&amp;rrk=47">
<style nonce="0G5_y_sJwgu2YMHeZtR6Lw">body{opacity:0;}</style>
</noscript>
<title>Sign in - Google Accounts</title>
</head>
<body>
<div class="BDEI9 LZgQXe">
<div class="Ha17qf" data-auto-init="Card">
<div class="Or16q">
<div>
<c-wiz jsrenderer="OTcFib" jsshadow jsdata="deferred-i2" data-p="%.@.]" data-node-index="1;0" jsmodel="hc6Ubd" c-wiz>
<div class="gEc4r">
<img src="//ssl.gstatic.com/images/branding/googlelogo/2x/googlelogo_color_74x24dp.png" class="TrZEUc" alt="Google" width="74" height="24">
</div>
<c-data id="i2" jsdata=" eCjdDd;_;2"></c-data>
</c-wiz>
<div class="EQIoSc" jsname="bN97Pc" data-use-configureable-escape-action="true">
<div jsname="paFcre">
<div class="aMfydd" jsname="tJHJj">
<h1 class="Tn0LBd" jsname="r4nke">2-Step Verification</h1>
<p class="a2CQh" jsname="VdSJob">To help keep your account safe, Google wants to make sure it’s really you trying to sign in</p>
<div class="C7uRJc"><a href="/v3/signin/identifier?continue=https://accounts.google.com/o/saml2/initsso?idpid%3DXXXXXX%26spid%3DYYYYYY2%26forceauthn%3Dfalse%26hl%3Den%26loc%3DUS&amp;dsh=S1897410368:1717647370196809&amp;faa=1&amp;flowEntry=ServiceLogin&amp;flowName=WebLiteSignIn&amp;followup=https://accounts.google.com/o/saml2/initsso?idpid%3DXXXXXX%26spid%3DYYYYYY2%26forceauthn%3Dfalse%26hl%3Den%26loc%3DUS&amp;hl=en_US&amp;ifkv=ABCDEFGHIJKLMNOPQRSTUVWXYZ?hl%3Den?hl%3Den" class="HDuqac EI77qf TrZEUc cd29Sd iiFyne" tabindex="0" aria-label="test-id1@example.com selected. Switch account" jsname="af8ijd">
<div class="BOs5fd">
<div class="hMeYtd">
<div class="viAgtf" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="48px" height="48px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm6.36 14.83c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33C4.62 15.49 4 13.82 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.49-1.64 4.83zM12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6z"></path></svg>
</div>
</div>
<div jsname="bQIQze" class="wJxLsd" data-profile-identifier translate="no">test-id1@example.com</div>
<div class="znpTjf"><svg aria-hidden="true" class="hZUije JC0zZc" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><polygon points="12,16.41 5.29,9.71 6.71,8.29 12,13.59 17.29,8.29 18.71,9.71"></polygon></svg></div>
</div>
</a>
</div>
</div>
</div>
<form action="/v3/signin/challenge/selection?TL=AC3PFD4RomKu1LFBpGwfQsyBH5WZcNzDhO-SBOMIreUr4ZdCvSnzjBOZh_P7lhuM&amp;continue=https://accounts.google.com/o/saml2/initsso?idpid%3DXXXXXX%26spid%3DYYYYYY2%26forceauthn%3Dfalse%26hl%3Den%26loc%3DUS&amp;dsh=S1897410368:1717647370196809&amp;faa=1&amp;flowEntry=ServiceLogin&amp;flowName=WebLiteSignIn&amp;followup=https://accounts.google.com/o/saml2/initsso?idpid%3DXXXXXX%26spid%3DYYYYYY2%26forceauthn%3Dfalse%26hl%3Den%26loc%3DUS&amp;hl=en_US&amp;ifkv=ABCDEFGHIJKLMNOPQRSTUVWXYZ?hl%3Den?hl%3Den&amp;lid=2" method="POST" novalidate>
<div class="iEhbme" jsname="rEuO1b">
<section class="aN1Vld fegW5d rNe0id eLNT1d S7S4N" aria-hidden="true" jsname="INM6z" aria-live="assertive" aria-atomic="true">
<header class="wSQNd" jsname="tJHJj">
<h2 class="cySqRb TrZEUc">
<span class="zlrrr" aria-hidden="true" jsname="Bz112c"><svg aria-hidden="true" class="hZUije GxLRef" fill="currentColor" focusable="false" width="20px" height="20px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"></path></svg>
</span>
<span jsname="Ud7fr">Too many failed attempts</span>
</h2>
<div jsname="HSrbLb" aria-hidden="true"></div>
</header>
</section>
<section class="aN1Vld " jsname="dZbRZb">
<div class="yOnVIb" jsname="MZArnb">
<section class="aN1Vld S7S4N">
<header class="wSQNd" jsname="tJHJj">
<h2 class="cySqRb TrZEUc">
<span jsname="Ud7fr">
<span jsname="I74d0c">Choose how you want to sign in:</span>
</span>
</h2>
<div jsname="HSrbLb" aria-hidden="true"></div>
</header>
<div class="yOnVIb" jsname="MZArnb">
<div jsname="wNqUrf">
<ul class="G8ZO0d">
<li class="CSxKW RDPZE SmR8 cd29Sd">
<div class="mimsib SmR8 RDPZE" jsname="EBHGs" data-challengeid=10 data-action=selectchallenge data-challengeunavailable="true" data-accountrecovery="false" data-challengetype="2"><button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="10,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M17.5,16.5V16h4A1.5,1.5,0,0,0,23,14.5v-5A1.5,1.5,0,0,0,21.5,8h-4V7.5A1.5,1.5,0,0,0,16,6H3A2,2,0,0,0,1,8v8a2,2,0,0,0,2,2H16A1.5,1.5,0,0,0,17.5,16.5Zm0-6.5v4H21V10ZM3,8H15.5v8H3Zm6.5,6.5A2.5,2.5,0,1,1,12,12,2.5,2.5,0,0,1,9.5,14.5Z" fill-rule="evenodd"></path></svg>
</div>
<div class="HCudjd"><span class="KrnQW">Use your Security Key<div jsname="TMYUoe">Not supported on this device or browser.</div></span></div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd ACt4Tb">
<div class="mimsib SmR8" jsname="EBHGs" data-challengeid=5 data-action=selectchallenge data-accountrecovery="false" data-challengetype="37">
<button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="5,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M18.75,14.15a1.72,1.72,0,0,1-.71.62A2.32,2.32,0,0,1,17,15a2.19,2.19,0,0,1-1.29-.39,1.94,1.94,0,0,1-.76-1.12l1-.41a1.15,1.15,0,0,0,.36.63,1,1,0,0,0,.66.23,1,1,0,0,0,.62-.22.69.69,0,0,0,.27-.55.7.7,0,0,0-.28-.58,1.25,1.25,0,0,0-.76-.21h-.5v-1h.46a1.05,1.05,0,0,0,.62-.18.65.65,0,0,0,.26-.54.59.59,0,0,0-.21-.47.8.8,0,0,0-.54-.18.81.81,0,0,0-.55.18,1,1,0,0,0-.3.46l-1-.41a1.76,1.76,0,0,1,.65-.87A1.85,1.85,0,0,1,16.94,9a2.26,2.26,0,0,1,1,.2,1.71,1.71,0,0,1,.66.55,1.4,1.4,0,0,1,.23.78,1.43,1.43,0,0,1-.21.79,1.39,1.39,0,0,1-.52.48v.07a1.43,1.43,0,0,1,.94,1.4A1.58,1.58,0,0,1,18.75,14.15ZM13.5,15H9.61V14l1.09-1.09c.54-.54.89-.9,1-1.06a2.7,2.7,0,0,0,.43-.56,1.18,1.18,0,0,0,.11-.5.67.67,0,0,0-.22-.51.84.84,0,0,0-.59-.21.79.79,0,0,0-.58.21,1.14,1.14,0,0,0-.32.51l-1-.42a1.85,1.85,0,0,1,1-1.15,2.12,2.12,0,0,1,.93-.2,2.25,2.25,0,0,1,1,.23,1.65,1.65,0,0,1,.67.61,1.63,1.63,0,0,1,.24.87,2.63,2.63,0,0,1-.92,1.86L11.1,14l0,0H13.5ZM7.64,15H6.49V10.5l-.9.66L5,10.27,6.77,9h.87Z"></path><path d="M20,6V18H4V6H20m0-2H4A2,2,0,0,0,2,6V18a2,2,0,0,0,2,2H20a2,2,0,0,0,2-2V6a2,2,0,0,0-2-2Z"></path></svg>
</div>
<div class="HCudjd"><span class="KrnQW">Get a one-time security code</span><span class="qhbTMe">Sign in on another device with your security key to get a code</span></div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd">
<div class="mimsib SmR8" jsname="EBHGs" data-challengeid=11 data-action=selectchallenge data-accountrecovery="false" data-challengetype="39">
<button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="11,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M4,6h18V4H4C2.9,4,2,4.9,2,6v11H0v3h14v-3H4V6z M23,8h-6c-0.55,0-1,0.45-1,1v10c0,0.55,0.45,1,1,1h6c0.55,0,1-0.45,1-1V9 C24,8.45,23.55,8,23,8z M22,17h-4v-7h4V17z"></path></svg>
</div>
<div class="HCudjd">
<span class="KrnQW">Tap <strong>Yes</strong> on your phone or tablet</span>
</div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd">
<div class="mimsib SmR8" jsname="EBHGs" data-challengeid=9 data-action=selectchallenge data-accountrecovery="false" data-challengetype="5">
<button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="9,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M23,9 C18.89,4.89 13.07,3.57 7.85,5.02 L17.42,14.59 L23,9 Z M5.76,5.76 L2.81,2.81 L1.39,4.22 L3.91,6.74 C2.88,7.37 1.89,8.11 1,9 L12,20 L14.59,17.41 L19.78,22.6 L21.19,21.19 L16,16 L5.76,5.76 Z"></path></svg>
</div>
<div class="HCudjd">
<span class="KrnQW">Use your phone or tablet to get a security code (even if it’s offline)</span>
</div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd">
<div class="mimsib SmR8" jsname="EBHGs" data-challengeid=4 data-action=selectchallenge data-accountrecovery="false" data-challengetype="6">
<button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="4,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 -960 960 960" xmlns="https://www.w3.org/2000/svg"><path d="M80-680v-200h200v80H160v120H80Zm0 600v-200h80v120h120v80H80Zm600 0v-80h120v-120h80v200H680Zm120-600v-120H680v-80h200v200h-80ZM700-260h60v60h-60v-60Zm0-120h60v60h-60v-60Zm-60 60h60v60h-60v-60Zm-60 60h60v60h-60v-60Zm-60-60h60v60h-60v-60Zm120-120h60v60h-60v-60Zm-60 60h60v60h-60v-60Zm-60-60h60v60h-60v-60Zm240-320v240H520v-240h240ZM440-440v240H200v-240h240Zm0-320v240H200v-240h240Zm-60 500v-120H260v120h120Zm0-320v-120H260v120h120Zm320 0v-120H580v120h120Z"></path></svg>
</div>
<div class="HCudjd">
<span class="KrnQW">Get a verification code from the <strong>Google Authenticator</strong> app</span>
</div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd ACt4Tb">
<div class="mimsib SmR8" jsname="EBHGs" data-challengeid=7 data-action=selectchallenge data-challengevariant=SMS data-accountrecovery="false" data-challengetype="9" data-sendmethod="SMS">
<button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="7,SMS">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M20,2 L4,2 C2.9,2 2.01,2.9 2.01,4 L2,22 L6,18 L20,18 C21.1,18 22,17.1 22,16 L22,4 C22,2.9 21.1,2 20,2 Z M20,16 L4,16 L4,4 L20,4 L20,16 Z M6,12 L14,12 L14,14 L6,14 L6,12 Z M6,9 L18,9 L18,11 L6,11 L6,9 Z M6,6 L18,6 L18,8 L6,8 L6,6 Z"></path></svg>
</div>
<div class="HCudjd">
<span class="KrnQW">Get a verification code at
<span class="oN6qIb">
<span dir="ltr" jsname="wKtwcc">(•••) •••-••01</span>
</span>
</span>
<span class="qhbTMe">2-Step Verification phone<p class="vOZun">Standard rates apply</p></span>
</div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd">
<div class="mimsib SmR8" jsname="EBHGs" data-challengeid=6 data-action=selectchallenge data-accountrecovery="false" data-challengetype="53">
<button class="TrZEUc mTkos" jsname="chyfmd" name="challenge" value="6,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M11 12q-1.65 0-2.825-1.175Q7 9.65 7 8q0-1.65 1.175-2.825Q9.35 4 11 4q1.65 0 2.825 1.175Q15 6.35 15 8q0 1.65-1.175 2.825Q12.65 12 11 12Zm0-2q.825 0 1.413-.588Q13 8.825 13 8t-.587-1.412Q11.825 6 11 6q-.825 0-1.412.588Q9 7.175 9 8t.588 1.412Q10.175 10 11 10ZM3 20v-2.775q0-.85.425-1.575t1.175-1.1q1.275-.65 2.887-1.1Q9.1 13 11 13q.525 0 1.025.037.5.038 1 .113.025.575.15 1.1.125.525.4 1.025-.575-.125-1.225-.2Q11.7 15 11 15q-1.8 0-3.2.438-1.4.437-2.3.887-.25.125-.375.375T5 17.225V18h10v2Zm15.25 1L17 19.5v-3.675q-.875-.325-1.438-1.087Q15 13.975 15 13q0-1.25.875-2.125T18 10q1.25 0 2.125.875T21 13q0 .975-.562 1.738-.563.762-1.438 1.087L20 17l-1 1 1 1ZM18 14.5q.625 0 1.062-.438.438-.437.438-1.062t-.438-1.062Q18.625 11.5 18 11.5t-1.062.438Q16.5 12.375 16.5 13t.438 1.062q.437.438 1.062.438ZM11 8h-.012H11Zm0 7Z"></path></svg></div>
<div class="HCudjd">
<span class="KrnQW">Use your passkey</span>
</div>
</button>
</div>
</li>
<li class="CSxKW SmR8 cd29Sd ACt4Tb">
<div class="mimsib SmR8" jsname="ZPoTod" data-action=accountrecovery data-accountrecovery="true" data-challengetype="2">
<button class="TrZEUc mTkos" jsname="chyfmd" name="accountrecovery" value="undefined,undefined">
<div class="fctl2e" aria-hidden="true"><svg aria-hidden="true" class="hZUije" fill="currentColor" focusable="false" width="24px" height="24px" viewBox="0 0 24 24" xmlns="https://www.w3.org/2000/svg"><path d="M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"></path></svg>
</div>
<div class="HCudjd">V
<span class="KrnQW">Get help</span>
<span class="qhbTMe"><p class="vOZun">For security reasons, this may take 3-5 business days</p></span>
</div>
</button>
</div>
</li>
</ul>
</div>
<input type="hidden" name="challengeListId" value="2">
</div>
</section>
</div>
</section>
<input type="hidden" name="" value="test-id1@example.com" jsname="m2Owvb" id="identifierId">
</div>
<div class="i2knIc fXx9Lc" jsname="DH6Rkf">
<div class="wg0fFb" jsname="DhK0U">
<div class="RhTxBf" jsname="k77Iif"></div>
</div>
</div>
<input type="hidden" name="at" value="ALt4Ve1a3rXrRqtP4VKGFpmGe-Ss:1717647372504">
</form>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
Loading
Loading