인증 앱을 통해 2단계 인증(2FA) 테스트하기
  • 24 Oct 2024
  • 2 읽을 분
  • 기여자
  • 어두운

인증 앱을 통해 2단계 인증(2FA) 테스트하기

  • 어두운

기사 요약

*이 페이지의 일부는 기계 번역되었습니다.

웹 애플리케이션 테스트에서 인증이 올바르게 작동하는지 확인하는 것은 매우 중요합니다. 오늘날 많은 애플리케이션은 비밀번호 인증과 더불어 다단계 인증(MFA)을 설정해야 합니다.

인증 앱은 TOTP(시간 기반 일회용 비밀번호)를 안전하게 생성할 수 있는 편리한 방법입니다. 이 도움말에서는 인증서를 사용하여 앱 기반 2단계 인증(2FA)이 올바르게 작동하는지 확인하는 방법을 설명합니다.

전제 조건

Autify를 사용하여 앱 기반 2FA가 작동하는지 확인하려면 다음 전제 조건을 충족해야 합니다:

  • 테스트 중인 웹 애플리케이션이 TOTP 인증 앱을 통한 인증을 지원해야 합니다.
  • TOTP 인증 앱과 동등한 역할을 하는 API를 사용할 수 있어야 합니다.
    • 자세한 내용은 '2단계 인증을 위한 프로세스 준비하기' 섹션을 참조하세요.

시나리오는 어떻게 구성되나요?

다음은 사용자가 GitHub에서 2단계 인증 절차를 거치는 시나리오의 예시입니다.

  • 5단계: 비밀번호로 첫 번째 인증 단계를 수행합니다.
  • 6~9단계: 새 창(*)에서 JS 단계를 실행하고 7단계에서 TOTP를 가져와 반환합니다.
  • 단계 10: 7단계에서 반환된 TOTP를 2FA 양식에 입력합니다.
  • 11-12단계: 인증 프로세스를 진행하고 인증이 완료되었는지 확인합니다.

* 테스트 중인 웹사이트에 따라 동일한 창에서 실행하는 것이 작동하지 않을 수 있습니다.

시나리오 상세 페이지

테스트 결과 페이지

Screen Shot 2023-01-06 at 16.39.39.png

10단계에서는 7단계에서 획득한 TOTP가 입력된 것을 확인할 수 있습니다.

Screen Shot 2023-01-06 at 16.40.29.png

시나리오 생성 방법

위에 표시된 시나리오를 만드는 방법은 다음과 같습니다.

프로세스는 두 단계로 나눌 수 있습니다:

  • 2단계: 2단계 인증을 위한 프로세스 준비하기
  • 시나리오 준비하기

2단계 인증을 위한 프로세스 준비하기

  1. TOTP를 생성하기 위한 API를 준비합니다. 자체 환경을 준비하는 것이 좋지만, 테스트를 위해 Autify에서 호스팅하는 다음 엔드포인트를 자유롭게 사용할 수 있습니다😊.
https://autify-jsstep-util-apis.herokuapp.com/totp
  1. TOTP 생성을 위한 비밀 키를 준비합니다. 일반적으로 이 키는 테스트 중인 애플리케이션에 표시됩니다. 비밀 키는 사용자가 스캔할 수 있는 QR 코드로 표시되는 경우가 많지만 테스트를 위해 문자 문자열을 얻으세요.

GitHub를 예로 들면 아래 표시된 섹션을 클릭하면 비밀 키가 표시됩니다:

zndsk-Screen_Shot_2021-07-02_at_16.42.05.png

시나리오 준비하기

  1. 2FA를 수행하기 직전까지 평소와 같이 웹 애플리케이션에서 작업을 기록하여 시나리오를 만듭니다.
  2. 2단계(2단계 인증을 위한 프로세스 준비)의 비밀키를 사용하여 JS Step을 통해 API에 TOTP를 생성하도록 요청하고 값(TOTP)을 반환합니다.

다음은 샘플 코드입니다. "YOUR SECRET CODE"를 실제 비밀 키로 대체해야 합니다.

var secret = "당신의 비밀 코드"
var url = "https://autify-jsstep-util-apis.herokuapp.com/totp";
var xhr = 새로운 XMLHttpRequest();

var oTP = null;


xhr.onerror = function() { {
새로운 Error("네트워크 오류")를 던집니다;
};
xhr.onload = function() {
oTP = xhr.response;
};


xhr.open("POST", url, false);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send("key=" + secret);


반환 OTP;
  1. 2단계의 JS 단계에서 반환된 TOTP를 2FA의 입력값으로 설정합니다.
    Screen Shot 2022-03-23 at 10.48.241

이제 테스트 실행 시마다 동적으로 생성된 TOTP가 입력됩니다🎉.

참고

  • 테스트 대상 앱/서비스의 2FA 사양은 해당 앱/서비스에서 제공하는 문서를 참조하시기 바랍니다.
  • 매번 다른 이메일 주소와 다른 비밀키가 사용되는 가입 절차를 인증하는 시나리오에서 위 방법을 적용할 수 있습니다. 이 경우 임의의 이메일 주소(이메일 테스트 기능에서 사용 가능)를 사용합니다.

궁금한 점이 있으면 지원팀에 문의해 주세요🙌.

더 읽어보기


이 문서가 도움이 되었습니까?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.