Unable to Bypass Face Verification for Singpass Testing #12
Replies: 9 comments 14 replies
-
I tried on the mobile browser of Safari and I'm getting the same issue, it's asking for a Face Verification. However, when I try on a desktop browser, I'm getting an authentication error. See the screenshot below: |
Beta Was this translation helpful? Give feedback.
-
I have the same problem, I tried other test user from the persona list, it's either prompt for 2FA or Face Verification. Nothing works so far. |
Beta Was this translation helpful? Give feedback.
-
can you try using this test account - S7790795E password: Demo@123 |
Beta Was this translation helpful? Give feedback.
-
My side working fine with this. |
Beta Was this translation helpful? Give feedback.
-
@denniafredo @dannycsz @poopypoops If you generate the |
Beta Was this translation helpful? Give feedback.
-
Anyone found a solution to this? I am also facing the same issue where System Code: AUTH-E0001b is shown. |
Beta Was this translation helpful? Give feedback.
-
I have been successful in retrieving the Here is the code that I used to try and successfully generate a working package main
import (
"crypto/rand"
"crypto/sha256"
"encoding/base64"
"encoding/hex"
"fmt"
"net/url"
"github.com/google/uuid"
)
const (
clientId = "<your-client-id>"
redirectUri = "http://localhost:8080/singpass"
scopes = "birthcountry dob email marital merdekagen.eligibility name nationality openid race sex uinfin"
tokenUrl = "https://stg-id.singpass.gov.sg/token"
)
func main() {
// Step 1: Get authorize url
_, codeChallenge, err := generatePkceCodePair()
if err != nil {
panic("failed to generate PKCE code pair!")
}
fmt.Println(authorizeUrl(codeChallenge))
}
func generatePkceCodePair() (string, string, error) {
// code verifier
bs := make([]byte, 32)
if _, err := rand.Read(bs); err != nil {
return "", "", err
}
codeVerifier := hex.EncodeToString(bs)
// code challenge
hash := sha256.New()
if _, err := hash.Write([]byte(codeVerifier)); err != nil {
return "", "", err
}
codeChallenge := base64.RawURLEncoding.EncodeToString(hash.Sum(nil))
return codeVerifier, codeChallenge, nil
}
func authorizeUrl(codeChallenge string) string {
v := url.Values{
"scope": []string{scopes},
"response_type": []string{"code"},
"redirect_uri": []string{redirectUri},
"nonce": []string{uuid.New().String()},
"client_id": []string{clientId},
"state": []string{uuid.New().String()},
"code_challenge": []string{codeChallenge},
"code_challenge_method": []string{"S256"},
}
return fmt.Sprintf("https://stg-id.singpass.gov.sg/auth?%s", v.Encode())
} However, you need to make sure that your SDP settings are correct:
{
"keys": [
{
"kid": "my-sig-key",
"kty": "EC",
"use": "sig",
"alg": "ES256",
"crv": "P-256",
"x": "16Ziaq7VMza-agHmM3P6uh887g2Yusp_lE7RBpi1YYI",
"y": "3XidKG6ImEvtt9dcjX8UoXykPRTovfALxPXaWPBQ7yc"
},
{
"kid": "my-enc-key",
"kty": "EC",
"use": "enc",
"alg": "ECDH-ES+A256KW",
"crv": "P-256",
"x": "6MYhNwxiDqIlp2-x7-EXWx9lv6N1C7rqezs7Nl9j7hA",
"y": "Q2cxMkolRlpdw8QY4Kwpkwqyp1vpoA3KVzoLXG2wvfQ"
}
]
}
|
Beta Was this translation helpful? Give feedback.
-
@denniafredo, are you still running into any issues? |
Beta Was this translation helpful? Give feedback.
-
Hi everyone,
We're currently integrating Singpass for authentication in our application, and we're encountering an issue during the login process. Every time we try to log in using the provided credentials (Singpass ID : F1612351W, Password : MyInfo2o15), it redirects us to the face verification step. This step is problematic for our team since not all of our developers are located in Singapore.
We are using an /auth endpoint in our application, which generates the authorization URL and redirects users to the Singpass login page. For testing and development purposes, is there a way to bypass or skip the face verification step? Alternatively, are there any sandbox or testing environments provided by Singpass that allow us to simulate this process without requiring actual face verification?
Your guidance or suggestions would be greatly appreciated. Thank you!
Here is my url : https://stg-id.singpass.gov.sg/auth?client_id=Dfn5pqzg4RwCpsJ28Fca83dcVHFVDKup&scope=email%20mobileno%20name%20openid%20regadd%20uinfin&response_type=code&redirect_uri=https%3A%2F%2Fspmw.interaktiv.sg%2Fapi%2Fcallback&code_challenge_method=S256&code_challenge=bxqeZ8NhZK5F2nCqbEOcb8sbn5zIck59Lis5pVZ_g7I&nonce=f67931e5-7d2d-4b47-9acd-1e305a24543d&state=9a2f750be346451925e691acce6dc728
Beta Was this translation helpful? Give feedback.
All reactions