관리 된 정체성은 주로 Azure Resources 내에서 사용하도록 설계 되었기 때문에 지역 환경에서 관리 된 정체성 테스트는 간단하지 않습니다. 그러나 로컬에서 관리 된 신원을 시뮬레이션하거나 모방하는 방법이 있습니다.
1. Azure Arc에 등록 : Azure Arc에 로컬 컴퓨터를 등록하여 기계에 관리 된 ID를 할당 할 수 있습니다. 이것은 시스템이 할당되거나 사용자가 할당 된 관리 아이덴티티 일 수 있습니다. 일단 등록되면, 관리 된 신원에 필요한 권한을 할당하여 관리 신분을 로컬로 테스트 할 수 있습니다 [1].
2. 로컬 에뮬레이션 관리 정체성 : 또 다른 접근 방식은 모의 인스턴스 메타 데이터 서비스를 실행하여 로컬로 관리 된 신분 서비스를 모방하는 것입니다. 여기에는 토큰 API를 시뮬레이션하여 일반적으로 Azure CLI 자격 증명을 사용하는 액세스 토큰을 반환합니다. 이 방법을 사용하면 실제로 로컬 컴퓨터에 사용하지 않고 관리 된 ID를 사용하는 코드를 테스트 할 수 있습니다 [3].
3. DefaultAzurecredential 사용 : 대부분의 개발 시나리오의 경우 'DefaultAzurecredential'을 사용하는 것이 권장됩니다. 이 자격 증명은 Visual Studio, Azure CLI 및 Azure AD 통합 인증을 포함한 다양한 인증 방법을 자동으로 시도하여 응용 프로그램을 로컬로 인증합니다. 관리 된 ID를 직접 사용하지는 않지만 유사한 원활한 인증 경험을 제공합니다 [5] [7].
요약하면, 관리 된 ID 자체는 지역 환경에서 직접 사용할 수 없지만 지역 개발을 위해 'DefaultAzeRecredential'과 같은 대체 인증 방법을 사용할 수 있습니다.
인용 :
[1] https://www.foxdeploy.com/blog/how-to-migrate-an-azure-function-ponct-to-use-aus-auseidentity.html
[2] https://stackoverflow.com/questions/67845857/can-a-user-assigned- itondity-be-used-locally
[3] https://gist.github.com/maskati/e0d74330dcf15848b043825cf6b2f8b7
[4] https://learn.microsoft.com/en-us/entra/managed-ondities-azure-resources/overview-for-developers
[5] https://www.reddit.com/r/azure/comments/1cilud6/managed_identities_and_local_developer_experience/
[6] https://learn.microsoft.com/en-us/entra/managed-identities-azure-resources/how-manage-us-assigned-managed-identities
[7] https://stackoverflow.com/questions/75930046/how-to-run-azure-function-locally-using-assigned-managed-configura
[8] https://www.codemag.com/article/2107041/eliminate-secrets-from-your-applications-with-azure-managed-identity
[9] https://learn.microsoft.com/en-us/azure/app-service/overview-managed-identity