마인크래프트/커스텀 모드 런처

마인크래프트 커스텀 런처 Helios Launcher (MRS Launcher) - 6

devppaka 2024. 9. 24. 00:52
반응형

런처를 거의 수정하기는 했는데, 마지막으로 중요하다고 할 수 있는 부분인 계정 로그인쪽을 수정하지 않았다.

이번에는 Azure에 가입하고 자신만의 런처를 등록하는 과정을 거쳐보자.

 

 

 

AZURE CLIENT ID?

마인크래프트를 즐기기 위해서는 Mojang 계정과 마이크로소프트 계정으로 로그인할 수 있다.

그리고 요즘에는 마이크로소프트 계정으로 로그인을 많이 사용하고 있다.

 

 

이 마이크로소프트 계정을 로그인 할 수 있게 하기 위해서는 앱(자신이 만든 런처)를 Microsoft의 Azure 라는 곳에다가 등록시켜야하는데,

좀 복잡할 수 있다...

 

 

(앱 등록시키는 과정을 적어놓은 문서 링크)

https://github.com/dscalzi/HeliosLauncher/blob/master/docs/MicrosoftAuth.md

 

HeliosLauncher/docs/MicrosoftAuth.md at master · dscalzi/HeliosLauncher

☀ Custom launcher for modded minecraft written in Electron and Node.js - dscalzi/HeliosLauncher

github.com

 

 

나는 이미 다른 런처 앱으로 등록을 거친 상태이기 때문에 스크린샷과 함께 자세한 설명을 하기 힘들어졌지만

조금이라도 적어보자면,

 

 

https://azure.microsoft.com/ko-kr/pricing/purchase-options/azure-account?icid=portal

 

Azure 무료 계정 또는 종량제 만들기 | Microsoft Azure

Azure 계정을 만들어 애플리케이션을 만들고, 배포하고, 관리하기 위한 확장성 있고 비용 효율적인 서비스를 시작합니다.

azure.microsoft.com

 

 

1. 위 링크를 타고 들어가서 본인 Microsoft 계정으로 로그인하거나, 새로 생성한다.

해킹 방지를 위해서, 2차인증이나 복구 이메일, 전화번호 등록으로 계정을 빡세게 보호해주는게 좋다.

 

2. 로그인이 되었다면 Azure 무료 계정으로 등록하거나, 종량제로 선택한다.

주소를 적는 칸에는 정확하게 주소를 입력하고, 이름은 실제 법적 이름으로 작성하자.

결제 정보를 적는 칸에는 해외 결제가 가능한 카드(VISA, 마스터카드)의 정확한 정보를 입력하자.

 

위 과정에서 결제 정보 확인을 위해 1000원이 결제되었다가 다시 취소된다.

 

3. Azure 가입이 완료되었다면 Azure 포탈에 접속하자.

https://portal.azure.com/

 

그리고 아래 설명서를 보면서 하면 되는데...

https://learn.microsoft.com/ko-kr/azure/active-directory-b2c/tutorial-create-tenant#create-an-azure-ad-b2c-tenant

 

자습서: Azure Active Directory B2C 테넌트 만들기

이 자습서에 따라 Azure Portal을 사용하여 Azure Active Directory B2C 테넌트를 만들어 애플리케이션 등록을 준비하는 방법을 알아봅니다.

learn.microsoft.com

 

위 링크를 타고 들어가면 Azure AD B2C 테넌트 만들기 항목에 도착할 것이다.

2, 3 은 기존에 Azure를 사용해봤었던 사람이라면 필요한 과정일지 모르겠지만,

 

난 맨 처음 가입하고 2번 3번 과정을 건너뛰고 4번부터 했다.

 

디렉터리와 테넌트를 만들었으면 다음으로 간다.

 

 

4. 앱 등록하기

위 페이지는 닫고 Helios Launcher 리포지토리의 문서를 보자.

 

< 1. Navigate to https://portal.azure.com >

다시 Azure 포탈에 접속하자.

 

< 2. In the search bar, search for Azure Active Directory. >

상단 검색바에 Azure AD B2C검색하고 클릭한다.

그러면 Azure AD B2C의 개요 페이지로 들어오게 된다.

 

< 3. In Azure Active Directory, go to App Registrations on the left pane (Under Manage). >

좌측 메뉴에서 개요 밑에 '관리' 메뉴를 펼치고 '앱 등록' 메뉴를 클릭한다.

 

< 4. Click New Registration. >

상단에 새 등록이라는 버튼이 있다. 클릭하자.

 

-- Set Name to be your launcher's name.

이름 칸에는 자신이 정한 런처의 이름을 적는다.

 

-- Set Supported account types to Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)

지원되는 계정 유형은 '모든 조직 디렉터리(모든 Microsoft Entra 디렉터리 - 다중 테넌트)의 계정 및 개인 Microsoft 계정(예: Skype, Xbox)' 를 선택하라고 하는데

한국어로 페이지를 보게 되면 다르게 적혀있다.

 

'모든 ID 공급자 또는 조직 디렉터리의 계정(사용자 흐름에서 사용자를 인증하는 용도)' 를 선택하면 된다.

 

 

-- Leave Redirect URI blank.

Redirect URI 칸은 비워두자.

 

-- Register the application.

등록 버튼을 클릭!

 

< 5. You should be on the application's management page. If not, Navigate back to App Registrations. Select the application you just registered. >

앱 등록을 하고 나면 앱의 관리 페이지로 이동해야하는데, 이동하지 않았다면, 뒤로가서 관리 -> 앱 등록 -> 모든 애플리케이션을 눌러서

자신이 등록한 앱을 선택하자.

 

< 6. Click Authentication on the left pane (Under Manage). >

좌측 메뉴에서 '관리' 메뉴를 펼치면 '인증' 메뉴가 있다. 클릭하자.

 

< 7. Click Add Platform. >

플랫폼 추가 버튼을 찾아서 클릭한다.

 

-- Select Mobile and desktop applications.

우측에 나타나는 메뉴에서 '모바일 및 데스크톱 애플리케이션' 항목을 선택하자.

 

-- Choose https://login.microsoftonline.com/common/oauth2/nativeclient as the Redirect URI.

리디렉션 URI에는 https://login.microsoftonline.com/common/oauth2/nativeclient 를 선택하자.

만약 위 URI가 없으면 추가 버튼을 눌러서 새로 입력해주면 된다.

 

-- Select Configure to finish adding the platform.

구성 버튼을 눌러서 플랫폼 추가를 마친다.

 

< 8. Go to Credentials & secrets. >

좌측 메뉴에서 '인증서 및 암호' 를 선택하자.

 

-- Select Client secrets.

'클라이언트 비밀' 이라는 메뉴를 찾아서 클릭한다.

 

-- Click New client secret.

'새 클라이언트 암호' 버튼을 찾아서 클릭한다.

 

-- Set a description.

설명입력한다. (나는 ClientSecret 이라고 입력했다)

만료 시간은 원하는걸 골라서 선택하자.

 

-- Click Add.

추가 버튼을 클릭한다.

 

-- Don't copy the client secret, adding one is just a requirement from Microsoft.

위에서 클라이언트 암호(비밀)을 만들었는데, 그저 Microsoft의 권장사항이라서 복사는 안해도 된다고 한다.

 

< 9. Navigate back to Overview. >

다시 좌측 메뉴에서 '개요' 메뉴를 클릭한다.

 

< 10. Copy Application (client) ID. >

개요 페이지에서 '애플리케이션(클라이언트) ID'를 복사해둔다.

 

 

 

이제 이 ID를 런처가 사용할 수 있도록 해야한다.

 

5. 파일 수정

MRS Launcher 폴더에

app -> assets -> js -> ipcconstants.js 라는 파일이 있다.

 

AZURE_CLIENT_ID

 

exports.AZURE_CLIENT_ID 라는 항목이 있는데,

= 옆에 ' ' 안에 ID를 적을 수 있다.

 

기존에 있던 내용은 지우고

자신의 앱 ID를 붙여넣는다.

 

exports.AZURE_CLIENT_ID = '1aabbcc0-1245-5678-b9b9-aea043eccff'

이런식으로 되어있으면 된다.

 

이제 실행 및 디버그 메뉴에서 런처를 한번 실행해보고, 로그인을 해보자.

로그인을 하고나서 오류가 발생하는데 이는 앱이 Microsoft의 화이트리스트에 등록되지 않았기 때문이다.

 

문서에 다음과 같이 적혀있는데,

Trying to log in before requesting whitelist is mandatory.

 

화이트리스트에 등록 요청을 하기 전에 로그인 시도를 꼭 해줘야한다고 한다.

 

이미 로그인 시도는 해봤으니 이제 화이트리스트에 등록해달라고 요청해보자.

 

6. 화이트리스트 등록 요청

1. https://github.com/dscalzi/HeliosLauncher/blob/master/docs/MicrosoftAuth.md

위 문서의 모든 과정을 완료했는지 확인한다.

(하다가 졸아서 깜빡한게 아니라면 문제될건 없다)

 

2. 요청 폼을 작성하고 제출한다.

https://aka.ms/mce-reviewappid

필요한 정보를 모두 채운다.

 

3번 항목을 보면 What type of request is this? 라는 게 있는데, New AppID for Approval을 선택한다.

5번 항목 Application ID는 위에서 복사한 ID를 붙여넣고,

6번 항목 Tenant ID는 애플리케이션 ID 복사할 때 페이지로 가면 디렉터리(테넌트) ID 라고 있다. 붙여넣는다.

 

애플리케이션 ID와 테넌트 ID

 

7번 항목에 Associated website or domian. 은 런처와 관련있는 웹사이트(Github 리포지토리 주소나 마크 서버에 대한 웹페이지 주소)를 넣어보자.

나는 런처를 만들때 Github 리포지토리가 있어서 그걸로 넣었다.

 

8번 항목에 Justification은 이 애플리케이션이 왜 필요한지에 대한 이유를 설명하면 된다.

나는 런처가 무슨 기능을 가지고 있고, 어떤식으로 사용할 수 있는지 번역기를 사용해서 자세하게 적어 보냈다.

(타당한 근거가 없으면 확인하지 않는다고 하니까 잘 적어보자...)

 

 9번 항목은 건너뛰었다.

 

다 작성했다면 제출 버튼을 눌러 제출한다!

 

 

 

----------

나는 제출하고 나서 하루 뒤에 이 글을 작성하는 것이기 때문에, 아직 로그인은 되지않는다.

만약 인증받아서 로그인에 성공하면 결과를 남겨보겠다.

2024-10-05 수정

 

반가운 이메일!

 

인증을 받으면 폼에 입력한 이메일로 위 처럼 연락이 온다.

 

 

이제 로그인해서 오류가 없으면 성공이다!

반응형