2

Managed service identity (MSI)이 활성화 된 기능 앱이 있습니다.키 볼트에 MSI 가능 기능 앱 액세스를 부여하는 방법은 무엇입니까?

이 기능 앱을 사용하여 내 키 저장소의 비밀번호에 액세스하려고합니다.

암호를 검색하기 위해 함수 App에 코드를 추가했습니다.

Microsoft.Azure.WebJobs.Script: One or more errors occurred. Microsoft.Azure.KeyVault: Access denied. 

내가 (위의 링크에 설명 된대로)에 필요하기 때문에이 생각 :

AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider(); 

var keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback)); 

var secret = await keyVaultClient.GetSecretAsync("https://test-prototype-vault.vault.azure.net/secrets/batman/guidhere").ConfigureAwait(false); 

나는 다음과 같은 오류가 발생합니다.

You may need to configure the target resource to allow access from your application. For example, if you request a token to Key Vault, you need to make sure you have added an access policy that includes your application's identity.

어떻게 해야할지 모르겠다. Key Vault로 이동하여 액세스 정책을 추가하려고 시도했습니다. 애플리케이션을 선택 옵션으로 찾을 수 없습니다.


Azure 기능 설정. 내가 주를 추가 할 때

enter image description here

은 무엇 발생합니다.

enter image description here

답변

3

이 블로그는 세부 사항을 가지고 있지만 키 저장소로 가서 새로운 액세스 정책

https://medium.com/@jeffhollan/getting-key-vault-secrets-in-azure-functions-37620fd20a0b

함수의 응용 프로그램의 이름을 비밀로 기능 응용 프로그램 액세스 권한을 부여 할 필요가해야 사용자 목록에 표시

+0

내가 생각하기에는 어려움이 있습니다. 내 질문에 일부 이미지를 추가하여 볼 수 있습니다. –

+0

흠 알 수없는 오류는 이상하지만 올바른 위치입니다. 시크릿 모드로 시도해보고 로컬 캐시 문제가 있는지 확인할 수 있습니까? – jeffhollan

+0

같은 결과, 다른 오류; "오류가 발생했습니다. 잠시 후 다시 시도하십시오" –