인증 및 권한 부여
IoT Central 애플리케이션에 대해 수행되는 모든 REST API 호출은 권한 부여 헤더를 포함해야 합니다. 권한 부여 헤더에는 API 토큰 또는 AAD 전달자 토큰이 포함되어야 합니다. 이러한 토큰은 IoT Central에서 호출자가 누구인지, 애플리케이션 내에서 액세스할 수 있는 토큰을 결정하는 데 사용됩니다.
API 토큰
API 토큰은 로그인한 사용자 컨텍스트 없이 서비스 간 통신을 위한 것입니다. 애플리케이션에서 API 토큰을 만들고 역할을 할당하여 애플리케이션 내의 리소스에 대한 액세스 권한을 부여할 수 있습니다.
API 토큰을 만들고 사용하려면 다음을 수행합니다.
브라우저에서 IoT Central 애플리케이션을 엽니다.
관리/API 토큰으로 이동
토큰 생성을 클릭합니다. 이름을 지정하고 역할을 선택하라는 메시지가 표시됩니다. 역할은 이 토큰을 사용하는 클라이언트가 이 애플리케이션에서 수행할 권한이 있는 작업을 결정합니다.
토큰을 생성하고 값을 복사합니다. 값은 비밀이며 한 번만 표시됩니다.
API 요청을 생성할 때 다음과 같은 헤더를 추가합니다.
헤더 이름 헤더 값 권한 부여 <API 토큰 값>
기본적으로 애플리케이션에서 3가지 역할을 사용할 수 있습니다. 새 역할을 만드는 방법에 대해 자세히 알아보세요.
프로그래밍 방식으로 새 API 토큰을 만들 수도 있습니다. API 요청을 통해 새 API 토큰을 만들려면 새 API 토큰을 만들 수 있는 권한이 있는 API 토큰 또는 전달자를 포함하는 권한 부여 헤더가 필요합니다. API 토큰 작업에 대한 문서를 참조하세요.
AAD 전달자 토큰
전달자 토큰은 IoT Central 애플리케이션에 추가된 Azure Active Directory 사용자 계정과 연결됩니다. Azure CLI 명령에서 전달자 토큰을 생성할 수 있습니다. az account get-access-token --resource https://apps.azureiotcentral.com
다음 헤더를 사용하여 API 요청을 생성합니다.
헤더 이름 | 헤더 값 |
---|---|
권한 부여 | 전달자 <전달자 토큰 값> |
API 요청에서 전달자 토큰을 사용하는 경우 호출자에게 Azure Active Directory 사용자가 IoT Central 애플리케이션에 있는 것과 동일한 수준의 액세스 권한이 부여됩니다.
서비스 주체 인증
AAD 서비스 주체를 사용하여 API에 대해 인증하려면 먼저 서비스 주체를 만들어야 합니다. 서비스 주체의 테넌트 ID 및 개체 ID를 가져와야 합니다.
- Azure Portal -> Azure Active Directory -> 개요로 이동합니다. tenantID 복사
- 엔터프라이즈 애플리케이션으로 이동합니다. 새 애플리케이션을 만들거나 기존 애플리케이션을 선택합니다. objectID 복사
- Azure Portal -> Azure Active Directory -> 앱 등록 -> 앱 -> API 권한으로 이동합니다. 사용 권한 추가 -> 내 organization 사용하는 API를 클릭하고 Microsoft IoT Central을 검색합니다. 이 정확한 텍스트와 일치하는 항목을 선택합니다.
- user_impersonation 및 Application.ReadWrite.All 권한을 선택하고 추가합니다.
- 디렉터리에 대한 관리자 동의 부여를 선택합니다.
마지막으로 IoT Central 애플리케이션에 서비스 주체를 추가합니다. 이는 현재 API를 통해 가능합니다.
- 사용자 만들기 API를 사용하여 이 서비스 주체 사용자를 추가합니다. 새 사용자를 만들 때 {tenantID} 및 {objectID} 를 사용해야 합니다.
이제 위와 동일한 단계에 따라 이 서비스 주체 사용자에 연결된 전달자 토큰을 사용하여 API 요청을 수행할 수 있습니다.
다음 단계
첫 번째 API 요청을 시도합니다.