시작하기 전에 이 페이지의 맨 위에 있는 테넌트 유형 선택기를 선택하여 테넌트 유형을 선택합니다. Microsoft Entra ID는 두 가지 테넌트 설정을 제공합니다: 직원 설정과 외부설정. 직원 테넌트 구성은 직원, 내부 앱 및 기타 조직 리소스를 위한 것입니다. 외부 테넌트는 고객용 앱용입니다.
여러 테넌트에 액세스할 수 있는 경우 위쪽 메뉴의 설정 아이콘 사용하여 디렉터리 + 구독 메뉴에서 애플리케이션을 등록하려는 테넌트로 전환합니다.
아이덴티티>애플리케이션>앱 등록으로 이동합니다.
새 등록선택합니다.
애플리케이션의 이름을 입력하십시오. 앱 사용자에게 이 이름이 표시될 수 있으며 나중에 변경할 수 있습니다.
등록선택합니다.
관리아래에서 인증>플랫폼 추가를>iOS선택합니다.
애플리케이션에 대한 번들 식별자 입력합니다. 번들 식별자는 애플리케이션을 고유하게 식별하는 고유 문자열입니다(예: com.<yourname>.identitysample.MSALMacOS). 사용하는 값을 기록해 둡다. iOS 구성은 macOS 애플리케이션에도 적용됩니다.
enter_the_signature_hash 을(를) 이전에 플랫폼 리디렉션 URL을 추가할 때 생성한 서명 해시 로 바꿉니다.
이 자습서에서는 단일 계정 모드에서 앱을 구성하는 방법만 보여 주듯이, 단일 및 다중 계정 모드 참조하고 자세한 내용은 앱 구성하는 참조하세요.
샘플 앱 실행
Android Studio의 사용 가능한 디바이스 드롭다운 목록에서 에뮬레이터 또는 물리적 디바이스를 선택하고 앱을 실행합니다.
샘플 앱은 단일 계정 모드 화면에서 시작됩니다. user.read 기본 범위는 기본적으로 제공되며, Microsoft Graph API 호출 중에 사용자 고유의 프로필 데이터를 읽을 때 사용됩니다. Microsoft Graph API 호출의 URL은 기본적으로 제공됩니다. 원하는 경우 이 두 가지를 모두 변경할 수 있습니다.
앱 메뉴를 사용하여 단일 및 여러 계정 모드 간에 변경합니다.
단일 계정 모드에서 회사 또는 홈 계정을 사용하여 로그인합니다.
그래프 데이터를 대화형으로 가져오기를 선택하여 사용자에게 자격 증명을 묻는 메시지를 표시합니다. 화면 아래쪽에 Microsoft Graph API 호출의 출력이 표시됩니다.
로그인한 후 사용자에게 자격 증명을 다시 요청하지 않고 자동으로 그래프 데이터 가져오기를 선택하여 Microsoft Graph API를 호출합니다. 화면 아래쪽에 Microsoft Graph API 호출의 출력이 표시됩니다.
여러 계정 모드에서 동일한 단계를 반복할 수 있습니다. 또한 로그인한 계정을 제거할 수 있습니다. 그러면 해당 계정의 캐시된 토큰도 제거됩니다.
위의 옵션 1을 선택한 경우 다음 단계를 건너뛸 수 있습니다.
XCode에서 프로젝트를 엽니다.
ViewController.swift 편집하고 'let kClientID'로 시작하는 줄을 다음 코드 조각으로 바꿉니다. 이 퀵스타트의 앞부분에서 앱을 등록할 때 저장한 clientID로 kClientID 값을 업데이트하도록 하세요.
let kClientID = "Enter_the_Application_Id_Here"
Microsoft Entra 국가 클라우드를위한 앱을 빌드하는 경우, 'let kGraphEndpoint' 및 'let kAuthority'로 시작하는 줄을 올바른 엔드포인트로 바꾸십시오. 전역 액세스의 경우 기본값을 사용합니다.
let kGraphEndpoint = "https://graph.microsoft.com/"
let kAuthority = "https://login.microsoftonline.com/common"
다른 엔드포인트는 여기에 문서화되어 있습니다. 예를 들어 Microsoft Entra Germany에서 빠른 시작을 실행하려면 다음을 사용합니다.
let kGraphEndpoint = "https://graph.microsoft.de/"
let kAuthority = "https://login.microsoftonline.de/common"
프로젝트 설정을 엽니다.
ID 섹션에서 번들 식별자입력합니다.
Info.plist 마우스 오른쪽 단추로 클릭하고 다른 방식으로 열기>소스 코드를 선택합니다.
dict 루트 노드에서 포털에서 사용한 번들 ID Enter_the_bundle_Id_Here를 로 교체합니다. 문자열의 msauth. 접두사를 확인합니다.
애플리케이션이 Microsoft Entra를 사용하여 사용자를 로그인할 수 있도록 하려면 사용자가 만든 애플리케이션을 Microsoft Entra 외부 ID로 인식해야 합니다. 앱 등록은 앱과 Microsoft Entra 간에 트러스트 관계를 설정합니다. 애플리케이션을 등록할 때 외부 ID는 인증 요청을 만들 때 앱을 식별하는 데 사용되는 값인 애플리케이션(클라이언트) ID알려진 고유 식별자를 생성합니다.
다음 단계에서는 Microsoft Entra 관리 센터에서 앱을 등록하는 방법을 보여 줍니다.
여러 테넌트에 액세스할 수 있는 경우 위쪽 메뉴의 설정 아이콘 사용하여 디렉터리 + 구독 메뉴에서 외부 테넌트로 전환합니다.
아이덴티티>애플리케이션>앱 등록으로 이동합니다.
+ 새 등록선택합니다.
등록 애플리케이션 페이지가 표시될 때
앱 사용자에게 표시되는 의미 있는 애플리케이션 이름 입력합니다(예: ciam-client-app ).
지원되는 계정 유형에서, 이 조직 디렉터리의 계정만을 선택합니다.
등록선택합니다.
등록에 성공하면 애플리케이션의 개요 창이 표시됩니다. 애플리케이션 소스 코드에서 사용할 애플리케이션(클라이언트) ID 기록합니다.
애플리케이션이 Microsoft Entra를 사용하여 사용자를 로그인할 수 있도록 하려면 사용자가 만든 애플리케이션을 Microsoft Entra 외부 ID로 인식해야 합니다. 앱 등록은 앱과 Microsoft Entra 간에 트러스트 관계를 설정합니다. 애플리케이션을 등록할 때 외부 ID는 인증 요청을 만들 때 앱을 식별하는 데 사용되는 값인 애플리케이션(클라이언트) ID알려진 고유 식별자를 생성합니다.
다음 단계에서는 Microsoft Entra 관리 센터에서 앱을 등록하는 방법을 보여 줍니다.
여러 테넌트에 액세스할 수 있는 경우 위쪽 메뉴의 설정 아이콘 사용하여 디렉터리 + 구독 메뉴에서 외부 테넌트로 전환합니다.
아이덴티티>애플리케이션>앱 등록으로 이동합니다.
+ 새 등록선택합니다.
등록 애플리케이션 페이지가 표시될 때
앱 사용자에게 표시되는 의미 있는 애플리케이션 이름 입력합니다(예: ciam-client-app ).
지원되는 계정 유형에서, 이 조직 디렉터리의 계정만을 선택합니다.
등록선택합니다.
등록에 성공하면 애플리케이션의 개요 창이 표시됩니다. 애플리케이션 소스 코드에서 사용할 애플리케이션(클라이언트) ID 기록합니다.
애플리케이션이 Microsoft Entra를 사용하여 사용자를 로그인할 수 있도록 하려면 사용자가 만든 애플리케이션을 Microsoft Entra 외부 ID로 인식해야 합니다. 앱 등록은 앱과 Microsoft Entra 간에 트러스트 관계를 설정합니다. 애플리케이션을 등록할 때 외부 ID는 인증 요청을 만들 때 앱을 식별하는 데 사용되는 값인 애플리케이션(클라이언트) ID알려진 고유 식별자를 생성합니다.
다음 단계에서는 Microsoft Entra 관리 센터에서 앱을 등록하는 방법을 보여 줍니다.
여러 테넌트에 액세스할 수 있는 경우 위쪽 메뉴의 설정 아이콘 사용하여 디렉터리 + 구독 메뉴에서 외부 테넌트로 전환합니다.
ID>외부 ID>사용자 흐름로 이동합니다.
+ 새 사용자 흐름선택합니다.
만들기 페이지에서 다음을 수행합니다.
사용자 흐름을 위한 이름 을 입력하세요. 예: SignInSignUpSample.
ID 공급자 목록에서 전자 메일 계정 선택합니다. 이 ID 공급자를 사용하면 사용자가 전자 메일 주소를 사용하여 로그인하거나 등록할 수 있습니다.
메모
추가 ID 공급자는 페더레이션을 설정한 후에만 여기에 나열됩니다. 예를 들어 Google , Facebook, Apple 또는 OIDC ID 공급자페더레이션을 설정하는 경우 여기에서 추가 ID 공급자를 선택할 수 있습니다.
전자 메일 계정아래에서 두 가지 옵션 중 하나를 선택할 수 있습니다. 이 자습서에서는 암호가 포함된 전자 메일을 선택합니다.
암호있는 전자 메일: 새 사용자가 로그인 이름으로 전자 메일 주소를 사용하고 암호를 첫 번째 요소 자격 증명으로 사용하여 등록하고 로그인할 수 있습니다.
이메일 일회용 비밀번호: 새 사용자는 로그인 이름으로 이메일 주소를 사용하고, 이메일 일회용 비밀번호를 첫 번째 요인 자격 증명으로 사용하여 가입 및 로그인할 수 있습니다. 이 옵션을 사용자 흐름 수준에서 사용할 수 있도록 하려면 테넌트 수준(모든 ID 공급자>이메일 일회용 암호)에서 전자 메일 일회용 암호를 사용하도록 설정해야 합니다.
사용자 특성등록 시 사용자로부터 수집하려는 특성을 선택합니다.
더 많은표시를 선택하면 국가/지역, 표시 이름및 우편 번호대한 특성 및 클레임을 선택할 수 있습니다.
확인선택합니다. (사용자가 처음으로 등록할 때만 특성에 대한 메시지가 표시됩니다.)
만들기선택합니다. 새 사용자 흐름이 사용자 흐름 목록에 표시됩니다. 필요한 경우 페이지를 새로 고칩니다.
Microsoft Graph 리소스에 대한 인증 및 액세스를 사용하도록 설정하려면 다음 단계에 따라 샘플을 구성합니다.
Android Studio에서 복제한 프로젝트를 엽니다.
/app/src/main/res/raw/auth_config_ciam.json 파일을 엽니다.
자리 표시자를 찾습니다.
해당 Enter_the_Application_Id_Here을(를) 이전에 등록한 앱의 애플리케이션(클라이언트) ID으로(로) 변경합니다.
Enter_the_Redirect_Uri_Here 플랫폼 리디렉션 URL을 추가했을 때 이전에 다운로드한 MSAL(Microsoft 인증 라이브러리) 구성 파일에서 redirect_uri 값으로 바꿉니다.
Enter_the_Tenant_Subdomain_Here 디렉터리(테넌트) 하위 도메인으로 바꿉니다. 예를 들어 테넌트 주 도메인이 contoso.onmicrosoft.com경우 contoso사용합니다. 테넌트 하위 도메인을 모르는 경우, 테넌트 세부 정보를 읽는 방법을알아봅니다.
/app/src/main/AndroidManifest.xml파일을 엽니다.
자리 표시자를 찾습니다.
ENTER_YOUR_SIGNATURE_HASH_HERE 을(를) 이전에 플랫폼 리디렉션 URL을 추가할 때 생성한 서명 해시 로 바꿉니다.
/app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt 파일을 엽니다.
private const val scopes = "" // Developers should set the respective scopes of their Microsoft Graph resources here. For example, private const val scopes = "api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}"
앱을 구성했으며 실행할 준비가 완료되었습니다.
Visual Studio에서 ms-identity-ciam-dotnet-tutorial-main/1-Authentication/2-sign-in-maui/appsettings.json 파일을 엽니다.
자리 표시자 찾기
Enter_the_Tenant_Subdomain_Here 디렉터리(테넌트) 하위 도메인으로 바꿉니다. 예를 들어 테넌트 주 도메인이 contoso.onmicrosoft.com경우 contoso사용합니다. 테넌트 이름이 없는 경우 테넌트 세부 정보를읽는 방법을 알아봅니다.
해당 Enter_the_Application_Id_Here을(를) 이전에 등록한 앱의 애플리케이션(클라이언트) ID으로(로) 변경합니다.
Visual Studio에서 ms-identity-ciam-dotnet-tutorial-main/1-Authentication/2-sign-in-maui/Platforms/Android/AndroidManifest.xml 파일을 엽니다.
자리 표시자 찾기
해당 Enter_the_Application_Id_Here을(를) 이전에 등록한 앱의 애플리케이션(클라이언트) ID으로(로) 변경합니다.
Microsoft Graph 리소스에 대한 인증 및 액세스를 사용하도록 설정하려면 다음 단계에 따라 샘플을 구성합니다.
Xcode에서 복제한 프로젝트를 엽니다.
/MSALiOS/Configuration.swift 파일을 엽니다.
자리 표시자를 찾습니다.
해당 Enter_the_Application_Id_Here을(를) 이전에 등록한 앱의 애플리케이션(클라이언트) ID으로(로) 변경합니다.
Enter_the_Redirect_URI_Here 플랫폼 리디렉션 URL을 추가했을 때 이전에 다운로드한 MSAL(Microsoft 인증 라이브러리) 구성 파일에서 kRedirectUri 값으로 바꿉니다.
Enter_the_Protected_API_Scopes_Here을 에 기록된 범위로 바꾸고, 관리자 동의를 부여합니다. 범위를 기록하지 않은 경우 이 범위 목록을 비워 둘 수 있습니다.
Enter_the_Tenant_Subdomain_Here 디렉터리(테넌트) 하위 도메인으로 바꿉니다. 예를 들어 테넌트 주 도메인이 contoso.onmicrosoft.com경우 contoso사용합니다. 테넌트 하위 도메인을 모르는 경우, 테넌트 세부 정보를 읽는 방법을알아봅니다.