포털을 사용하여 리소스에 액세스할 수 있는 Azure Active Directory 응용 프로그램 및 서비스 주체 만들기Use portal to create an Azure Active Directory application and service principal that can access resources

리소스를 액세스하거나 수정해야 하는 응용 프로그램이 있는 경우 Azure AD(Active Directory) 응용 프로그램을 설정하고 필수 사용 권한을 할당해야 합니다.When you have an application that needs to access or modify resources, you must set up an Azure Active Directory (AD) application and assign the required permissions to it. 이 방법은 다음의 이유로 사용자 고유의 자격 증명을 사용하여 앱을 실행하는 데 좋습니다.This approach is preferable to running the app under your own credentials because:

  • 자체 사용 권한과 다른 앱 ID에 대한 사용 권한을 할당할 수 있습니다.You can assign permissions to the app identity that are different than your own permissions. 일반적으로 이러한 권한은 정확히 앱 실행에 필요한 것으로 제한됩니다.Typically, these permissions are restricted to exactly what the app needs to do.
  • 책임이 변경되면 앱의 자격 증명을 변경할 필요가 없습니다.You do not have to change the app's credentials if your responsibilities change.
  • 무인 스크립트를 실행할 때 인증서를 사용하여 인증을 자동화할 수 있습니다.You can use a certificate to automate authentication when executing an unattended script.

이 문서에서는 포털을 통해 이러한 단계를 수행하는 방법을 보여 줍니다.This article shows you how to perform those steps through the portal. 여기서는 응용 프로그램을 하나의 조직 내에서만 실행하게 되는 단일 테넌트 응용 프로그램을 중점적으로 다룹니다.It focuses on a single-tenant application where the application is intended to run within only one organization. 일반적으로 단일 조직 내에서 실행되는 LOB(기간 업무) 응용 프로그램에 대해 단일 테넌트 응용 프로그램을 사용하게 됩니다.You typically use single-tenant applications for line-of-business applications that run within your organization.

필요한 사용 권한Required permissions

이 문서를 완료하려면 Microsoft Azure Active Directory 테넌트에 응용 프로그램을 등록하고 Azure 구독의 역할에 응용 프로그램을 할당하기 위한 충분한 권한이 있어야 합니다.To complete this article, you must have sufficient permissions to register an application with your Azure AD tenant, and assign the application to a role in your Azure subscription. 이러한 단계를 수행하기 위한 올바른 권한이 있는지 확인해보겠습니다.Let's make sure you have the right permissions to perform those steps.

Azure Active Directory 권한 확인Check Azure Active Directory permissions

  1. Azure Portal을 통해 Azure 계정에 로그인합니다.Log in to your Azure Account through the Azure portal.

  2. Azure Active Directory를 선택합니다.Select Azure Active Directory.

    Azure Active Directory 선택

  3. Azure Active Directory에서 사용자 설정을 선택합니다.In Azure Active Directory, select User settings.

    사용자 설정 선택

  4. 앱 등록 설정을 확인합니다.Check the App registrations setting. 로 설정된 경우 관리자가 아닌 사용자가 AD 앱을 등록할 수 있습니다.If set to Yes, non-admin users can register AD apps. 이 설정에서는 Azure AD 테넌트의 모든 사용자가 앱을 등록할 수 있습니다.This setting means any user in the Azure AD tenant can register an app. Azure 구독 권한 확인을 계속 진행할 수 있습니다.You can proceed to Check Azure subscription permissions.

    앱 등록 보기

  5. 앱 등록 설정이 아니요로 설정되어 있으면 관리자만 앱을 등록할 수 있습니다.If the app registrations setting is set to No, only admin users can register apps. 사용자 계정이 Azure AD 테넌트에 대한 관리자인지 확인합니다.Check whether your account is an admin for the Azure AD tenant. 빠른 작업에서 개요사용자 찾기를 선택합니다.Select Overview and Find a user from Quick tasks.

    사용자 찾기

  6. 사용자 계정을 검색하고, 찾으면 선택합니다.Search for your account, and select it when you find it.

    사용자 검색

  7. 사용자 계정에 대해 디렉터리 역할을 선택합니다.For your account, select Directory role.

    디렉터리 역할

  8. Azure AD에서 할당된 디렉터리 역할을 봅니다.View your assigned directory role in Azure AD. 계정이 사용자 역할에 할당되어 있으나 앱 등록 설정(이전 단계)이 관리자로 제한되어 있으면 관리자에게 사용자를 관리자 역할로 할당하거나 사용자가 앱을 등록할 수 있게 설정하도록 요청합니다.If your account is assigned to the User role, but the app registration setting (from the preceding steps) is limited to admin users, ask your administrator to either assign you to an administrator role, or to enable users to register apps.

    역할 보기

Azure 구독 권한 확인Check Azure subscription permissions

Azure 구독에서 사용자 계정에 AD 앱을 역할에 할당할 수 있는 Microsoft.Authorization/*/Write 권한이 있어야 합니다.In your Azure subscription, your account must have Microsoft.Authorization/*/Write access to assign an AD app to a role. 이 작업에 대한 권한은 소유자 역할 또는 사용자 액세스 관리자 역할을 통해 부여됩니다.This action is granted through the Owner role or User Access Administrator role. 계정이 참가자 역할에 할당된 경우 적절한 사용 권한이 없습니다.If your account is assigned to the Contributor role, you do not have adequate permission. 서비스 주체를 역할에 할당하려고 하면 오류가 발생합니다.You receive an error when attempting to assign the service principal to a role.

Azure 구독 권한을 확인하려면To check your subscription permissions:

  1. 이전 단계에서 Azure AD 계정을 아직 확인하지 않은 경우 왼쪽 창에서 Azure Active Directory를 선택합니다.If you are not already looking at your Azure AD account from the preceding steps, select Azure Active Directory from the left pane.

  2. Azure AD 계정을 찾습니다.Find your Azure AD account. 빠른 작업에서 개요사용자 찾기를 선택합니다.Select Overview and Find a user from Quick tasks.

    사용자 찾기

  3. 사용자 계정을 검색하고, 찾으면 선택합니다.Search for your account, and select it when you find it.

    사용자 검색

  4. Azure 리소스를 선택합니다.Select Azure resources.

    리소스 선택

  5. 할당된 사용자 역할을 확인하고 AD 앱을 역할에 할당하기 위한 적절한 권한이 있는지 확인합니다.View your assigned roles, and determine if you have adequate permissions to assign an AD app to a role. 이러한 권한이 없으면 구독 관리자에게 사용자 액세스 관리자 역할에 사용자를 추가할 것을 요청합니다.If not, ask your subscription administrator to add you to User Access Administrator role. 다음 그림에서 사용자에게는 2개의 구독에 대한 소유자 역할이 할당됩니다. 즉, 사용자에게는 적절한 권한이 있습니다.In the following image, the user is assigned to the Owner role for two subscriptions, which means that user has adequate permissions.

    권한 표시

Azure Active Directory 응용 프로그램 만들기Create an Azure Active Directory application

  1. Azure Portal을 통해 Azure 계정에 로그인합니다.Log in to your Azure Account through the Azure portal.
  2. Azure Active Directory를 선택합니다.Select Azure Active Directory.

    Azure Active Directory 선택

  3. 앱 등록을 선택합니다.Select App registrations.

    앱 등록 선택

  4. 새 응용 프로그램 등록을 선택합니다.Select New application registration.

    앱 추가

  5. 응용 프로그램에 대한 이름 및 URL을 제공합니다.Provide a name and URL for the application. 만들려는 응용 프로그램 유형으로 웹앱/API를 선택합니다.Select Web app / API for the type of application you want to create. Native 응용 프로그램에 대한 자격 증명을 만들 수 없으므로 해당 유형은 자동화된 응용 프로그램에 대해 작동하지 않습니다.You cannot create credentials for a Native application; therefore, that type does not work for an automated application. 값을 설정한 후 만들기를 선택합니다.After setting the values, select Create.

    응용 프로그램 이름 지정

응용 프로그램이 만들어졌습니다.You have created your application.

응용 프로그램 ID 및 인증 키 가져오기Get application ID and authentication key

프로그래밍 방식으로 로그인하는 경우 응용 프로그램에 대한 ID 및 인증 키가 필요합니다.When programmatically logging in, you need the ID for your application and an authentication key. 이러한 값을 가져오려면 다음 단계를 사용합니다.To get those values, use the following steps:

  1. Azure Active Directory의 앱 등록에서 응용 프로그램을 선택합니다.From App registrations in Azure Active Directory, select your application.

    응용 프로그램 선택

  2. 응용 프로그램 ID를 복사하고 응용 프로그램 코드에 저장합니다.Copy the Application ID and store it in your application code. 샘플 응용 프로그램 섹션의 응용 프로그램은 이 값을 클라이언트 ID로 참조합니다.The applications in the sample applications section refer to this value as the client ID.

    클라이언트 ID

  3. 인증 키를 생성하려면 를 선택합니다.To generate an authentication key, select Keys.

    키 선택

  4. 키에 대한 설명 및 키의 기간을 제공합니다.Provide a description of the key, and a duration for the key. 완료되면 저장을 선택합니다.When done, select Save.

    키 저장

    키를 저장하면 키 값이 표시됩니다.After saving the key, the value of the key is displayed. 나중에 키를 검색할 수 없으므로 이 값을 복사해둡니다.Copy this value because you are not able to retrieve the key later. 응용 프로그램으로 로그인하려면 응용 프로그램 ID와 함께 키 값을 제공합니다.You provide the key value with the application ID to log in as the application. 응용 프로그램에서 검색할 수 있는 위치에 키 값을 저장합니다.Store the key value where your application can retrieve it.

    공유 키

테넌트 ID 가져오기Get tenant ID

프로그래밍 방식으로 로그인하는 경우 인증 요청과 함께 테넌트 ID를 전달해야 합니다.When programmatically logging in, you need to pass the tenant ID with your authentication request.

  1. Azure Active Directory를 선택합니다.Select Azure Active Directory.

    Azure Active Directory 선택

  2. 테넌트 ID를 가져오려면 Azure AD 테넌트에 대한 속성을 선택합니다.To get the tenant ID, select Properties for your Azure AD tenant.

    Azure AD 속성 선택

  3. 디렉터리 ID를 복사합니다.Copy the Directory ID. 이 값은 테넌트 ID입니다.This value is your tenant ID.

    테넌트 ID

응용 프로그램을 역할에 할당Assign application to role

구독의 리소스에 액세스하려면 역할에 응용 프로그램을 할당해야 합니다.To access resources in your subscription, you must assign the application to a role. 응용 프로그램에 적합한 사용 권한을 나타내는 역할을 결정합니다.Decide which role represents the right permissions for the application. 사용 가능한 역할에 대해 알아보려면 RBAC: 기본 제공 역할을 참조하세요.To learn about the available roles, see RBAC: Built in Roles.

구독, 리소스 그룹 또는 리소스 수준에서 범위를 설정할 수 있습니다.You can set the scope at the level of the subscription, resource group, or resource. 권한은 하위 수준의 범위로 상속됩니다.Permissions are inherited to lower levels of scope. 예를 들어 응용 프로그램에 리소스 그룹에 대한 읽기 권한자 역할을 추가하면 응용 프로그램이 리소스 그룹과 그 안에 포함된 모든 리소스를 읽을 수 있습니다.For example, adding an application to the Reader role for a resource group means it can read the resource group and any resources it contains.

  1. 응용 프로그램을 할당하려는 범위 수준으로 이동합니다.Navigate to the level of scope you wish to assign the application to. 예를 들어 구독 범위에서 역할을 할당하려면 구독을 선택합니다.For example, to assign a role at the subscription scope, select Subscriptions. 대신 리소스 그룹 또는 리소스를 선택할 수 있습니다.You could instead select a resource group or resource.

    구독 선택

  2. 응용 프로그램을 할당할 특정 구독(리소스 그룹 또는 리소스)을 선택합니다.Select the particular subscription (resource group or resource) to assign the application to.

    할당을 위한 구독 선택

  3. Access Control(IAM)을 선택합니다.Select Access Control (IAM).

    액세스 선택

  4. 추가를 선택합니다.Select Add.

    추가 선택

  5. 응용 프로그램에 할당할 역할을 선택합니다.Select the role you wish to assign to the application. 다음 이미지에서는 읽기 권한자 역할을 보여 줍니다.The following image shows the Reader role.

    역할 선택

  6. 응용 프로그램을 검색하고 선택합니다.Search for your application, and select it.

    앱 검색

  7. 저장을 선택하여 역할 할당을 완료합니다.Select Save to finish assigning the role. 목록에서 해당 범위에 대한 역할에 할당된 사용자 목록에 응용 프로그램이 표시될 것입니다.You see your application in the list of users assigned to a role for that scope.

응용 프로그램으로 로그인Log in as the application

응용 프로그램은 이제 Azure Active Directory에 설정되어 있습니다.Your application is now set up in Azure Active Directory. 응용 프로그램으로 로그인하는 데 사용할 ID와 키가 있습니다.You have an ID and key to use for signing in as the application. 응용 프로그램은 수행할 수 있는 특정 작업을 제공하는 역할에 할당됩니다.The application is assigned to a role that gives it certain actions it can perform. 다른 플랫폼을 통해 응용 프로그램으로 로그인하는 방법에 대한 자세한 내용은 다음을 참조하세요.For information about logging in as the application through different platforms, see:

다음 단계Next steps