영업: 1-800-867-1380

응용 프로그램 추가, 업데이트 및 제거

업데이트 날짜: 2014년 10월

이 항목에서는 Azure AD(Active Directory)에서 응용 프로그램을 추가, 업데이트 또는 제거하는 방법을 보여 줍니다. Azure AD와 통합할 수 있는 다양한 유형의 응용 프로그램, Web API 등의 기타 리소스에 액세스하도록 응용 프로그램을 구성하는 방법 등을 확인할 수 있습니다. 앱 속성에 대한 자세한 내용은 Application Objects and Service Principal Objects를 참조하세요.

Azure AD의 기능을 사용하려는 응용 프로그램은 먼저 디렉터리에 등록해야 합니다. 이 등록 프로세스에서는 응용 프로그램 위치의 URL, 사용자가 인증된 후 회신을 보낼 URL, 앱을 식별하는 URI 등 응용 프로그램에 대한 세부 정보를 Azure AD에 제공합니다.

Azure AD에서 사용자 로그온 기능만 필요한 웹 응용 프로그램을 빌드하는 경우에는 아래 지침만 따르면 됩니다. 응용 프로그램에 Web API 액세스 권한이 필요하거나, Web API에 액세스해야 하는 네이티브 응용 프로그램을 빌드하거나, 응용 프로그램을 다중 테넌트로 설정하려는 경우에는 계속해서 응용 프로그램 업데이트 섹션의 내용을 확인해 응용 프로그램 구성을 계속해야 합니다.

응용 프로그램을 다른 조직에서 사용할 수 있게 하려면 응용 프로그램이 추가된 후 외부 액세스도 사용하도록 설정해야 합니다.

  1. Azure 관리 포털에 로그인합니다.

  2. 왼쪽 메뉴의 Active Directory 아이콘을 클릭하고 원하는 디렉터리를 클릭합니다.

  3. 위쪽 메뉴에서 응용 프로그램을 클릭합니다. 디렉터리에 앱을 추가하지 않은 경우 이 페이지에는 앱 추가 링크만 표시됩니다. 해당 링크를 클릭합니다. 명령 모음에서 추가 단추를 클릭해도 됩니다.

  4. 원하는 옵션을 선택하세요. 페이지에서 조직에서 개발 중인 응용 프로그램 추가 링크를 클릭합니다.

  5. 응용 프로그램에 대한 정보 입력 페이지에서 응용 프로그램의 이름과 Azure AD에 등록할 응용 프로그램의 유형을 지정해야 합니다. 웹 응용 프로그램 및/또는 Web API(기본값) 또는 휴대폰이나 컴퓨터와 같은 장치에 설치된 응용 프로그램을 나타내는 네이티브 클라이언트 응용 프로그램 중에서 선택할 수 있습니다.

    선택을 완료한 후 페이지 오른쪽 아래의 화살표 아이콘을 클릭합니다.

  6. 앱 속성 페이지에서 웹 응용 프로그램의 로그온 URL앱 ID URI을 입력(네이티브 클라이언트 응용 프로그램의 경우에는 리디렉션 URI만 입력)한 다음 페이지 오른쪽 아래의 확인란을 클릭합니다.

  7. 응용 프로그램이 추가되며 응용 프로그램의 빠른 시작 페이지가 표시됩니다. 응용 프로그램이 웹 응용 프로그램인지 아니면 네이티브 응용 프로그램인지에 따라 응용 프로그램에 기능을 더 추가하기 위한 각기 다른 옵션이 표시됩니다. 응용 프로그램을 추가한 후에는 응용 프로그램 업데이트를 시작하여 사용자가 로그인할 수 있도록 설정하거나, 다른 응용 프로그램의 Web API에 액세스하거나, 다중 테넌트 응용 프로그램을 구성할 수 있습니다(다른 조직에서 응용 프로그램에 액세스할 수 있음).

    note참고
    기본적으로 새로 작성된 응용 프로그램 등록은 디렉터리의 사용자가 응용 프로그램에 로그인할 수 있도록 구성됩니다.

Azure AD에 등록한 응용 프로그램은 Web API 액세스 권한 제공, 다른 조직에서 사용 가능하도록 설정 등을 위해 업데이트해야 할 수 있습니다. 이 섹션에서는 응용 프로그램을 추가로 구성하는 방법을 설명합니다. Azure AD에서 인증이 작동하는 방식에 대한 자세한 내용은 Azure AD의 인증 시나리오를 참조하세요.

응용 프로그램을 업데이트하기 전에 Azure AD의 승인 프레임워크에 대해 몇 가지 중요한 개념을 이해해야 합니다.

Azure AD의 새로운 승인 프레임워크에서는 Azure AD를 통해 보호되는 Web API에 액세스해야 하는 웹 및 네이티브 응용 프로그램을 쉽게 개발할 수 있습니다. 이러한 Web API에는 Graph API, Office 365 및 기타 Microsoft 서비스와 고유한 Web API가 포함됩니다. 이 프레임워크에서는 사용자나 관리자가 응용 프로그램을 디렉터리에 등록하도록 승인하며, 이때 디렉터리 데이터에 액세스할 수 있습니다. 예를 들어 웹 응용 프로그램이 사용자에 대한 일정 정보를 읽기 위해 Office 365 Web API를 호출해야 하는 경우 해당 사용자가 응용 프로그램을 승인해야 합니다. 사용자가 승인을 하면 웹 응용 프로그램이 사용자 대신 Office 365 Web API를 호출하고 필요에 따라 일정 정보를 사용할 수 있습니다.

승인 프레임워크는 OAuth 2.0 및 다양한 해당 흐름(예: 공용 또는 기밀 클라이언트를 사용하는 클라이언트 자격 증명 부여 및 권한 부여 코드 부여)을 기반으로 구축됩니다. Azure AD는 OAuth 2.0을 통해 휴대폰, 태블릿, 서버, 웹 응용 프로그램 등 다양한 유형의 클라이언트 응용 프로그램을 빌드하고 필요한 리소스 액세스 권한을 얻을 수 있습니다.

승인 프레임워크에 대한 자세한 내용은 Azure AD의 OAuth 2.0, Azure AD의 인증 시나리오 및 Office 365 항목 공통 승인 프레임워크를 사용한 인증 및 권한 부여를 참조하세요.

아래 단계에서는 응용 프로그램 개발자와 사용자가 승인 환경을 사용할 수 있는 방식을 보여 줍니다.

  1. Azure 관리 포털의 응용 프로그램 구성 페이지에서 다른 응용 프로그램에 대한 권한 컨트롤의 드롭다운 메뉴를 사용하여 응용 프로그램에 필요한 권한을 설정합니다.



    다른 응용 프로그램에 대한 권한

  2. 응용 프로그램의 권한이 업데이트되었고 응용 프로그램이 실행 중이며 사용자가 응용 프로그램을 처음으로 사용하려 한다고 가정해 보겠습니다. 응용 프로그램은 액세스 권한이나 새로 고침 토큰을 아직 받지 않은 경우 Azure AD의 권한 부여 끝점으로 이동하여 새로운 액세스 권한 및 새로 고침 토큰을 받는 데 사용할 수 있는 권한 부여 코드를 얻어야 합니다.

  3. 사용자가 아직 인증되지 않은 경우 Azure AD에 로그인하라는 메시지가 표시됩니다.



    Azure AD에 사용자 또는 관리자 로그인

  4. 사용자가 로그인하고 나면 Azure AD에서는 사용자에게 승인 페이지를 표시해야 하는지 여부를 확인합니다. 이 확인은 사용자 또는 사용자 조직의 관리자가 응용 프로그램 사용을 이미 승인했는지 여부를 기준으로 합니다. 응용 프로그램 사용을 아직 승인하지 않은 경우 Azure AD는 사용자에게 승인 메시지와 응용 프로그램이 작동하는 데 필요한 권한을 표시합니다. 승인 대화 상자에 표시되는 권한 집합은 Azure 관리 포털의 다른 응용 프로그램에 대한 권한 컨트롤에서 선택한 권한과 같습니다.



    사용자 승인 환경

  5. 사용자가 승인을 하면 권한 부여 코드가 응용 프로그램에 반환됩니다. 이 코드를 사용하여 액세스 토큰과 새로 고침 토큰을 얻을 수 있습니다. 이 흐름에 대한 자세한 내용은 Azure AD의 인증 시나리오 항목의 Web Application to Web API 섹션을 참조하세요.

위에서 설명한 승인 프레임워크를 사용하면 디렉터리에서 Web API를 통해 표시되는 데이터에 액세스하기 위한 권한이 필요하도록 응용 프로그램을 구성할 수 있습니다. 기본적으로 모든 응용 프로그램은 Azure Active Directory(Graph API) 및 Azure 서비스 관리 API에서 권한을 선택할 수 있습니다. 기본적으로는 Azure AD "로그온 및 사용자 프로필 읽기 사용" 권한이 이미 선택되어 있습니다. 디렉터리에 Office 365 구독도 있는 경우 SharePoint와 Exchange Online에 대한 Web API 및 권한도 선택할 수 있습니다. 원하는 Web API 옆의 드롭다운 메뉴에서 두 가지 유형의 권한 중 선택할 수 있습니다.

  • 응용 프로그램 권한: 응용 프로그램이 사용자 컨텍스트 없이 자체적으로 Web API에 직접 액세스해야 합니다. 이 유형의 권한은 관리자가 승인해야 하며, 네이티브 클라이언트 응용 프로그램에는 사용할 수 없습니다.

  • 위임 권한: 응용 프로그램이 로그인한 사용자로 Web API에 액세스해야 합니다. 액세스 권한은 선택한 권한을 통해 제한됩니다. 관리자의 승인이 필요하도록 권한이 구성된 경우가 아니면 사용자가 이 유형의 사용 권한을 부여할 수 있습니다.

  1. Azure 관리 포털에 로그인합니다.

  2. 왼쪽 메뉴의 Active Directory 아이콘을 클릭하고 원하는 디렉터리를 클릭합니다.

  3. 위쪽 메뉴에서 응용 프로그램을 클릭하고 구성하려는 응용 프로그램을 클릭합니다. 그러면 Single Sign-On 및 기타 구성 정보가 포함된 빠른 시작 페이지가 표시됩니다.

  4. 빠른 시작의 다른 응용 프로그램에서 Web API 액세스 섹션을 확장하고 사용 권한 설정 섹션 아래의 지금 구성 링크를 클릭합니다. 그러면 응용 프로그램 속성 페이지가 나타납니다.

  5. 아래쪽의 다른 응용 프로그램에 대한 권한 섹션으로 스크롤합니다. 첫 번째 열에서는 디렉터리에서 사용 가능한 Web API를 표시하는 응용 프로그램 중에서 선택할 수 있습니다. 응용 프로그램을 선택한 후 Web API가 표시하는 응용 프로그램 및 위임 권한을 선택할 수 있습니다.

  6. 권한을 선택한 후 명령 모음에서 저장 단추를 클릭합니다.

    note참고
    저장 단추를 클릭하면 앞에서 구성한 다른 응용 프로그램에 대한 권한을 기준으로 하여 디렉터리의 응용 프로그램에 대한 권한도 자동으로 설정됩니다. 응용 프로그램 속성 탭을 통해 이러한 응용 프로그램 권한을 확인할 수 있습니다.

Web API를 개발한 다음 다른 응용 프로그램 개발자에게 권한 범위를 표시하여 해당 API를 다른 조직에 제공할 수 있습니다. 올바르게 구성된 Web API는 Graph API 및 Office 365 API를 비롯한 기타 Microsoft Web API처럼 사용할 수 있습니다. 응용 프로그램 ID 구성을 나타내는 JSON 파일인 응용 프로그램 매니페스트를 구성하여 Web API를 제공합니다. Azure 관리 포털의 응용 프로그램으로 이동한 다음 명령 모음에서 응용 프로그램 매니페스트 단추를 클릭하여 권한 범위를 표시할 수 있습니다.

  1. Azure 관리 포털에 로그인합니다.

  2. 왼쪽 메뉴의 Active Directory 아이콘을 클릭하고 원하는 디렉터리를 클릭합니다.

  3. 위쪽 메뉴에서 응용 프로그램을 클릭하고 구성하려는 응용 프로그램을 클릭합니다. 그러면 Single Sign-On 및 기타 구성 정보가 포함된 빠른 시작 페이지가 표시됩니다.

  4. 명령 모음에서 매니페스트 관리 단추를 클릭하고 매니페스트 다운로드를 선택합니다.

  5. JSON 응용 프로그램 매니페스트 파일을 열고 “oauth2Permissions” 노드를 다음 JSON 코드 조각으로 바꿉니다. 이 코드 조각은 사용자 가장이라는 권한 범위를 표시하는 방법의 예입니다. 해당 텍스트와 값은 사용 중인 응용 프로그램에 맞게 변경해야 합니다.

    "oauth2Permissions": [
        {
          "adminConsentDescription": "Allow the application full access to the Todo List service on behalf of the signed-in user",
          "adminConsentDisplayName": "Have full access to the Todo List service",
          "id": "b69ee3c9-c40d-4f2a-ac80-961cd1534e40",
          "isEnabled": true,
          “origin”: “Application”
          "type": "User",
          "userConsentDescription": "Allow the application full access to the todo service on your behalf",
          "userConsentDisplayName": "Have full access to the todo service",
          "value": "user_impersonation"
        }
      ],
    

    id 값은 GUID 생성 도구를 사용하여 또는 프로그래밍 방식으로 만드는 새로 생성된 GUID여야 합니다. 이 값은 Web API를 통해 표시되는 권한의 고유 식별자를 나타냅니다. 클라이언트는 Web API에 대한 액세스 권한을 요청하도록 적절하게 구성된 후 Web API를 호출할 때 scope(scp) 클레임이 위의 value(여기서는 user_impersonation)로 설정된 OAuth 2.0 JWT 토큰을 제공합니다.

    note참고
    나중에 필요하면 권한 범위를 추가로 표시할 수 있습니다. Web API가 다양한 기능과 연관된 여러 권한을 표시한다고 가정해 보겠습니다. 이 경우 수신된 OAuth 2.0 JWT 토큰의 scope(scp) 클레임을 사용하여 Web API에 대한 액세스를 제어할 수 있습니다.

  6. 업데이트된 JSON 파일을 저장한 다음 업로드합니다. 이렇게 하려면 명령 모음의 메니페스트 관리 단추를 클릭하고 매니페스트 업로드를 선택한 다음 업데이트된 매니페스트 파일을 찾아서 선택합니다. 이 파일을 업로드하고 나면 디렉터리의 다른 응용 프로그램이 사용할 수 있도록 Web API가 구성됩니다.

  1. 위쪽 메뉴에서 응용 프로그램을 클릭하고 Web API에 대한 액세스를 구성할 원하는 응용 프로그램을 선택한 후에 구성을 클릭합니다.

  2. 아래쪽의 다른 응용 프로그램에 대한 권한 섹션으로 스크롤합니다. 응용 프로그램 선택 드롭다운 메뉴를 클릭하면 방금 사용 권한을 표시한 Web API를 선택할 수 있습니다. 위임 권한 드롭다운 메뉴에서 새 권한을 선택합니다.

    할 일 목록 권한이 표시됨

아래 표에는 응용 프로그램 매니페스트 JSON 파일의 oauth2Permissions 부분에 사용할 수 있는 값이 나와 있습니다.

 

요소 설명

adminConsentDescription

관리자 승인 대화 상자와 사용을 승인한 앱의 속성 페이지를 가리키면 표시되는 도움말 설명입니다.

adminConsentDisplayName

응용 프로그램 및/또는 위임 권한 범위 드롭다운과 앱의 속성 페이지에 표시되며 승인 중에 관리자에게도 표시되는 권한의 이름입니다.

id

권한 범위의 고유 내부 식별자를 나타냅니다. 응용 프로그램의 모든 권한 내에서 고유해야 하며 GUID여야 합니다.

isEnabled

OAuth2 권한을 만들거나 업데이트할 때는 이 값을 항상 true로 설정합니다. 권한을 삭제하려는 경우에는 먼저 이 값을 false로 설정한 후에 매니페스트를 업로드해야 합니다. 그런 다음 후속 매니페스트 업로드에서 권한을 제거할 수 있습니다.

origin

나중에 사용하도록 예약되어 있습니다. 항상 "application"으로 설정합니다.

유형

다음 값 중 하나를 사용할 수 있습니다.

  • “User”: 최종 사용자가 승인할 수 있습니다.

  • “Admin”: 반드시 회사 관리자가 승인해야 합니다.

userConsentDescription

사용자 승인 대화 상자를 가리키면 표시되는 도움말 설명입니다.

userConsentDisplayName

승인 중에 최종 사용자에게 표시되며 앱 액세스 패널의 앱 속성 페이지에도 표시되는 권한의 이름입니다.

value

사용자가 특정 권한을 승인한 경우 OAuth 2.0 액세스 토큰의 scp 클레임에 저장되는 값입니다. Web API는 이 값을 사용하여 사용자를 가장할 때 응용 프로그램이 사용할 수 있는 액세스 권한 수준의 범위를 지정할 수 있습니다. 이 값은 공백을 포함하지 않아야 하며 응용 프로그램의 모든 권한 내에서 고유해야 합니다.

이 섹션에서는 Graph API에 액세스하도록 응용 프로그램을 업데이트하는 방법을 설명합니다. 다른 응용 프로그램에 대한 권한 목록에서 Graph API의 이름은 "Azure Active Directory"입니다. Azure AD에 등록된 모든 응용 프로그램은 기본적으로 Graph API를 사용할 수 있습니다. Graph API에 대해 다음 권한 중에서 선택할 수 있습니다.

 

권한 이름 설명 Type

로그온 및 사용자 프로필 읽기 사용

사용자가 조직 계정을 사용하여 응용 프로그램에 로그인하도록 하고, 응용 프로그램이 로그인한 사용자의 전자 메일 주소 및 연락처 정보와 같은 프로필을 읽을 수 있도록 합니다.

위임 권한 전용. 사용자가 승인할 수 있습니다.

조직의 디렉터리에 액세스

응용 프로그램이 로그인한 사용자 대신 조직 디렉터리에 액세스할 수 있습니다.

위임 권한 전용. 네이티브 클라이언트에서는 사용자가 승인할 수 있으며 웹 응용 프로그램의 경우에는 관리자만 승인할 수 있습니다.

디렉터리 데이터 읽기

응용 프로그램이 사용자, 그룹, 응용 프로그램 등 조직 디렉터리에 포함된 데이터를 읽을 수 있습니다.

위임 및 응용 프로그램 권한. 관리자가 승인해야 합니다.

디렉터리 데이터 읽기 및 쓰기

응용 프로그램이 사용자, 그룹 등 조직 디렉터리에 포함된 데이터를 읽고 쓸 수 있습니다.

위임 및 응용 프로그램 권한. 관리자가 승인해야 합니다.

Azure 관리 포털의 기존 사용자에 대해 새로운 다른 응용 프로그램에 대한 권한 컨트롤을 사용하여 디렉터리 데이터 읽기디렉터리 데이터 읽기 및 쓰기 응용 프로그램 권한을 설정하는 것은 이전의 액세스 관리 마법사를 사용하는 것과 같습니다. Office 365에서 표시하는 권한 범위를 확인하려면 공통 승인 프레임워크를 사용한 인증 및 권한 부여 항목을 참조하세요.

note참고
현재 제한으로 인해 네이티브 클라이언트 응용 프로그램은 "조직의 디렉터리에 액세스" 권한을 사용하는 경우에만 Azure AD Graph API를 호출할 수 있습니다. 웹 응용 프로그램에는 이 제한이 적용되지 않습니다.

Azure AD에 응용 프로그램을 추가할 때 조직의 사용자만 응용 프로그램에 액세스하도록 지정할 수 있습니다. 또는 외부 조직의 사용자가 응용 프로그램에 액세스하도록 지정할 수도 있습니다. 이 두 응용 프로그램 유형을 각각 단일 테넌트 및 다중 테넌트 응용 프로그램이라고 합니다. 단일 테넌트 응용 프로그램의 구성을 수정해 다중 테넌트 응용 프로그램으로 만들 수 있습니다. 이 섹션의 뒷부분에서는 이 작업에 대해 설명합니다.

단일 테넌트 응용 프로그램과 다중 테넌트 응용 프로그램의 차이점을 파악해야 합니다. 단일 테넌트 응용 프로그램은 단일 조직에서 사용하기 위한 것으로, 대개 엔터프라이즈 개발자가 작성하는 LOB(기간 업무) 응용 프로그램입니다. 단일 테넌트 응용 프로그램에는 단일 디렉터리 내 사용자만 액세스해야 하며 결과적으로 단일 디렉터리에서만 이 응용 프로그램을 프로비전해야 합니다. 다중 테넌트 응용 프로그램은 여러 조직에서 사용할 수 있으며, 보통 ISV(Independent Software Vendor)가 작성하는 SaaS(Software-as-a-Service) 응용 프로그램입니다. 다중 테넌트 응용 프로그램은 해당 응용 프로그램을 사용할 각 디렉터리에서 프로비전되어야 하므로, 사용자 또는 관리자가 해당 응용 프로그램을 등록하는 데 승인해야 합니다.

조직 외부의 고객이나 파트너에게 제공할 응용 프로그램을 작성하는 경우에는 Azure 관리 포털에서 응용 프로그램 정의를 업데이트해야 합니다.

note참고
외부 액세스를 사용하도록 설정할 때는 응용 프로그램의 앱 ID URI가 확인된 도메인에 속하는지를 확인해야 합니다. 또한 반환 URLhttps://로 시작해야 합니다. 자세한 내용은 Application Objects and Service Principal Objects를 참조하세요.

  1. Azure 관리 포털에 로그인합니다.

  2. 왼쪽 메뉴의 Active Directory 아이콘을 클릭하고 원하는 디렉터리를 클릭합니다.

  3. 위쪽 메뉴에서 응용 프로그램을 클릭하고 구성하려는 응용 프로그램을 클릭합니다. 그러면 Single Sign-On 및 기타 구성 정보가 포함된 빠른 시작 페이지가 표시됩니다.

  4. 빠른 시작의 다중 테넌트 응용 프로그램 구성 섹션을 확장하고 액세스할 수 있는 프로그램 섹션의 지금 구성 링크를 클릭합니다. 그러면 응용 프로그램 속성 페이지가 나타납니다.

  5. 응용 프로그램이 다중 테넌트임 옆의 단추를 클릭하고 명령 모음의 저장 단추를 클릭합니다.

위와 같이 변경하고 나면 다른 조직의 사용자와 관리자가 응용 프로그램에 해당 디렉터리와 기타 데이터에 대한 액세스를 허용할 수 있습니다.

승인 프레임워크를 사용하여 액세스를 허용하려면 클라이언트 응용 프로그램이 OAuth 2.0을 사용하여 권한 부여를 요청해야 합니다. 웹 응용 프로그램, 네이티브 응용 프로그램 또는 서버/디먼 응용 프로그램이 Web API를 호출하기 위한 권한 부여 코드 및 액세스 토큰을 요청하는 방법을 보여 주는 코드 샘플이 제공됩니다.

웹 응용 프로그램에서 사용자를 위한 등록 환경을 제공할 수 있습니다. 등록 환경을 제공하는 경우 사용자는 등록 또는 로그인 단추를 클릭해야 합니다. 그러면 브라우저에 Azure AD OAuth 2.0 권한 부여 끝점 또는 OpenID Connect 사용자 정보 끝점이 표시됩니다. 응용 프로그램은 이러한 끝점을 통해 id_token을 검사하여 새 사용자에 대한 정보를 가져올 수 있습니다.

웹 응용 프로그램에서 관리자가 "회사 등록"을 수행할 수 있는 환경을 제공할 수도 있습니다. 또한 이 환경에서는 사용자가 Azure AD OAuth 2.0 권한 부여 끝점으로 리디렉션됩니다. 이 경우 prompt=admin_consent 매개 변수를 전달하여 관리자가 조직 대신 승인을 하는 승인 환경을 트리거할 수도 있습니다. 승인에 성공하는 경우 응답에는 admin_consent=true가 포함됩니다. 액세스 토큰을 사용하면 응용 프로그램을 등록한 관리자와 조직에 대한 정보를 제공하는 id_token도 수신됩니다.

이 섹션에서는 2014년 3월 12일 이전의 레거시 승인 환경에 대해 설명합니다. 아래에서 설명하는 이 환경은 계속 지원됩니다. 새로운 기능이 제공되기 전에는 다음 권한만 부여할 수 있었습니다.

  • 조직의 사용자 로그온

  • 사용자 로그온 및 해당 조직의 디렉터리 데이터 읽기(응용 프로그램으로만)

  • 사용자 로그온 및 해당 조직의 디렉터리 데이터 읽기/쓰기(응용 프로그램으로만)

Azure AD를 사용하여 다중 테넌트 웹 응용 프로그램 개발의 단계에 따라 Azure AD에 등록된 새 응용 프로그램에 대한 액세스를 허용할 수 있습니다. 새로운 승인 프레임워크에서는 훨씬 효율적인 응용 프로그램을 사용할 수 있으며 관리자뿐만 아니라 사용자도 이러한 응용 프로그램 사용을 승인할 수 있습니다.

외부 사용자가 자신의 조직 계정을 사용하여 앱에 등록하도록 하려면 외부 사용자의 액세스를 허용할 수 있는 Azure AD의 페이지로 연결되는 단추를 표시하도록 앱을 업데이트해야 합니다. 이 등록 단추의 브랜딩 관련 지침은 통합된 응용 프로그램의 브랜딩 지침 항목에 설명되어 있습니다. 사용자가 액세스를 허용하거나 거부하고 나면 브라우저에서 Azure AD 액세스 허용 페이지가 앱으로 다시 리디렉션되고 응답이 표시됩니다. 응용 프로그램 속성에 대한 자세한 내용은 Application Object를 참조하세요.

액세스 허용 페이지는 Azure AD에서 작성되며 관리 포털의 앱 구성 페이지에서 해당 페이지에 대한 링크를 찾을 수 있습니다. 구성 페이지로 이동하려면 Azure AD 테넌트의 위쪽 메뉴에 있는 응용 프로그램 링크를 클릭하고 구성할 앱을 클릭한 후에 빠른 시작 페이지의 위쪽 메뉴에서 구성을 클릭합니다.

응용 프로그램의 링크는 다음과 같습니다. http://account.activedirectory.windowsazure.com/Consent.aspx?ClientID=058eb9b2-4f49-4850-9b78-469e3176e247&RequestedPermissions=DirectoryReaders&ConsentReturnURL= https%3A%2F%2Fadatum.com%2FExpenseReport.aspx%3FContextId%3D123456. 다음 표에서는 링크의 각 부분에 대해 설명합니다.

 

매개 변수 설명

ClientId

필수 사항입니다. 앱을 추가하는 과정에서 얻은 클라이언트 ID입니다.

RequestedPermissions

선택적 요소입니다. 앱이 요청하는 액세스 수준으로, 앱 액세스를 허용하는 사용자에게 표시됩니다. 지정하지 않는 경우 기본적으로 Single Sign-On 액세스 수준만 요청합니다. 나머지 옵션은 DirectoryReadersDirectoryWriters입니다. 이러한 액세스 수준에 대한 자세한 내용은 Application Access Levels을 참조하세요.

ConsentReturnUrl

선택적 요소입니다. 액세스 허용 응답을 반환할 URL입니다. 이 값은 URL로 인코딩해야 하며, 앱 정의에 구성된 Reply URL과 같은 도메인에 있어야 합니다. 값을 제공하지 않으면 액세스 허용 응답이 구성된 Reply URL로 리디렉션됩니다.

Reply URL과 별도로 ConsentReturnUrl을 지정하면 앱이 Reply URL(보통 로그온을 위한 SAML 토큰을 처리함)과는 다른 URL에서 응답을 처리할 수 있는 별도의 논리를 구현할 수 있습니다. 또한 ConsentReturnURL 인코딩 URL에서 추가 매개 변수를 지정할 수도 있습니다. 이러한 매개 변수는 리디렉션 시 쿼리 문자열 매개 변수로 앱에 다시 전달됩니다. 이 메커니즘을 사용하면 추가 정보를 유지 관리하거나 액세스 허용을 위한 앱의 요청을 Azure AD의 응답에 연결할 수 있습니다.

아래 그림에는 응용 프로그램이 액세스 허용 링크로 리디렉션될 때 사용자에게 표시되는 환경이 나와 있습니다.

사용자가 아직 로그인하지 않은 경우 로그인하라는 메시지가 표시됩니다.

AAD에 로그인

사용자가 인증되면 Azure AD는 사용자를 액세스 허용 페이지로 리디렉션합니다.

액세스 부여

note참고
외부 조직의 회사 관리자만이 앱 액세스를 허용할 수 있습니다. 회사 관리자가 아닌 사용자에게는 회사 관리자에게 메일을 보내 해당 앱에 대한 액세스를 허용해 줄 것을 요청하는 옵션이 제공됩니다.

고객이 액세스 허용을 클릭하여 액세스를 허용했거나 취소를 클릭하여 액세스를 거부한 경우 Azure AD는 ConsentReturnUrl 또는 구성된 Reply URL로 응답을 보냅니다. 이 응답에는 다음과 같은 매개 변수가 포함되어 있습니다.

 

매개 변수 설명

TenantId

앱에 대한 액세스를 허용한 Azure AD의 고유한 조직 ID입니다. 이 매개 변수는 고객이 액세스를 허용한 경우에만 지정됩니다.

Consent

이 값은 앱의 액세스가 허용된 경우 Granted로 설정되고 요청이 거부된 경우 Denied로 설정됩니다.

추가 매개 변수는 ConsentReturnUrl 인코딩된 URL의 일부분으로 지정된 경우 앱으로 반환됩니다. 아래에는 응용 프로그램에 권한이 부여되었음을 나타내는 액세스 허용 요청에 대한 응답의 예가 나와 있습니다. 여기에는 액세스 허용 요청에서 제공된 ContextID가 포함되어 있습니다. https://adatum.com/ExpenseReport.aspx?ContextID=123456&Consent=Granted&TenantId=f03dcba3-d693-47ad-9983-011650e64134

note참고
사용자의 보안 토큰은 액세스 허용 응답에 포함되지 않습니다. 앱에서 사용자 로그인을 별도로 수행해야 합니다.

아래에는 거부된 액세스 허용 요청에 대한 응답의 예가 나와 있습니다. https://adatum.com/ExpenseReport.aspx?ContextID=123456&Consent=Denied

앱의 수명 동안 Graph API를 호출하기 위한 액세스 토큰을 얻기 위해 Azure AD를 호출할 때 사용하는 키를 변경해야 하는 경우가 있습니다. 일반적으로는 두 가지 경우에 키를 변경합니다. 그 중 하나는 키가 손상된 경우의 긴급 롤오버이고, 다른 하나는 현재 키가 곧 만료될 예정인 경우의 롤오버입니다. 키를 새로 고치는 동안(키를 변경하는 두 경우 중 주로 두 번째 경우) 앱에 계속 액세스할 수 있도록 하려면 다음 절차를 수행해야 합니다.

  1. Azure 관리 포털에서 디렉터리 테넌트를 클릭하고 위쪽 메뉴에서 응용 프로그램을 클릭한 후에 구성할 앱을 클릭합니다. 그러면 Single Sign-On 및 기타 구성 정보가 포함된 빠른 시작 페이지가 표시됩니다.

  2. 위쪽 메뉴에서 구성을 클릭하여 앱 속성 목록을 표시합니다. 그러면 키 목록이 표시됩니다.

  3. 에서 기간 선택 드롭다운을 클릭하고 1년 또는 2년을 선택한 후에 명령 모음에서 저장을 클릭합니다. 그러면 앱에 대해 새 암호 키가 생성됩니다. 이 새 암호 키를 복사합니다. 이 시점에서는 앱이 기존 키와 키를 모두 사용하여 Azure AD에서 액세스 토큰을 가져올 수 있습니다.

  4. 앱으로 돌아가서 새 암호 키를 사용하도록 구성을 업데이트합니다. 이 업데이트가 수행되는 경우의 예는 Graph API를 사용하여 Azure AD 쿼리를 참조하세요.

  5. 이제 프로덕션 환경 전체로 이 변경 내용을 롤링해야 합니다. 먼저 서비스 노드 하나에서 변경 내용을 확인한 다음 나머지 노드로 변경 내용을 롤링합니다.

  6. 프로덕션 배포 전체에서 업데이트가 완료되면 Azure 관리 포털로 돌아와 이전 키를 제거할 수 있습니다.

외부 사용자가 앱에 액세스할 수 있도록 설정한 후에도 Azure 관리 포털에서 앱 속성을 계속 변경할 수 있습니다. 그러나 앱을 변경하기 before에 앱에 대한 액세스를 이미 허용한 고객의 경우 Azure 관리 포털에서 앱에 대한 세부 정보를 볼 때 이러한 변경 내용이 반영되지 않습니다. 앱을 고객에게 제공한 후에는 특정 변경을 수행할 때 매우 주의해야 합니다. 예를 들어 App ID URI를 업데이트하는 경우 해당 변경 이전에 액세스가 허용된 기존 고객이 회사 또는 학교 계정을 사용하여 앱에 로그인할 수 없게 됩니다.

더 높은 액세스 수준을 요청하기 위해 RequestedPermissions를 변경하는 경우, 이와 같이 높아진 액세스 수준을 사용하여 새 API 호출을 수행하는 앱 기능을 사용 중인 기존 고객은 Graph API에서 액세스 거부 응답을 받을 수 있습니다. 이 경우 앱은 이러한 사례를 처리하고 높아진 액세스 수준을 요청하여 앱에 대한 액세스를 허용하라는 메시지를 고객에게 표시해야 합니다.

이 섹션에서는 단일 테넌트 및 다중 테넌트 응용 프로그램에 대해 디렉터리에서 응용 프로그램을 제거하는 방법을 설명합니다.

  1. Azure 관리 포털에 로그인합니다.

  2. 왼쪽 메뉴의 Active Directory 아이콘을 클릭하고 원하는 디렉터리를 클릭합니다.

  3. 위쪽 메뉴에서 응용 프로그램을 클릭하고 구성하려는 응용 프로그램을 클릭합니다. 그러면 Single Sign-On 및 기타 구성 정보가 포함된 빠른 시작 페이지가 표시됩니다.

  4. 명령 모음에서 삭제 단추를 클릭합니다.

  5. 확인 메시지에서 를 클릭합니다.

  1. Azure 관리 포털에 로그인합니다.

  2. 왼쪽 메뉴의 Active Directory 아이콘을 클릭하고 원하는 디렉터리를 클릭합니다.

  3. 위쪽 메뉴에서 응용 프로그램을 클릭하고 구성하려는 응용 프로그램을 클릭합니다. 그러면 Single Sign-On 및 기타 구성 정보가 포함된 빠른 시작 페이지가 표시됩니다.

  4. 응용 프로그램이 다중 테넌트임 섹션에서 아니요를 클릭합니다. 그러면 응용 프로그램이 단일 테넌트로 변환되기는 하지만 이미 응용 프로그램 액세스를 승인한 조직 내에 계속 유지됩니다.

  5. 명령 모음에서 삭제 단추를 클릭합니다.

  6. 확인 메시지에서 를 클릭합니다.

회사 관리자가 앱 액세스를 승인한 후 디렉터리에 대한 앱 액세스 권한을 제거하려는 경우 Azure 관리 포털을 통해 액세스 권한을 제거하기 위한 Azure 구독이 필요합니다. 또한 회사 관리자는 Azure AD PowerShell cmdlet을 사용하여 액세스 권한을 제거할 수도 있습니다.

이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.
표시:
© 2015 Microsoft