2016-12-30 2 views
0

here의 일부 예제와 함께 배치 된 함수의 비밀을 얻으려고 시도한 functions API을 사용했습니다.Powershell의 Azure 함수에 대한 비공개 비밀

Login-AzureRmAccount을 통해 구독 소유자로 로그인했으며 액세스 토큰을 토큰 캐시에서 가져 왔습니다. 이를 사용하여 Invoke-RestMethod을 사용하여 ARM API를 호출하여 함수 API별로 기밀 정보를 나열합니다. 예 :

# $accessToken is from TokenCache 
$uri = "https://management.azure.com/subscriptions/[my-subscription-guid]/resourceGroups/SampleResourceGroup/providers/Microsoft.Web/sites/SampleFunctionApp/functions/SampleFunction/listsecrets?api-version=2015-08-01" 
Invoke-RestMethod ` 
    -Method Post ` 
    -Headers @{ 
     "Authorization" = "Bearer $accessToken" 
    } ` 
    -Uri $uri 

Azure는 webapp이 중지되었다고 주장하며 403을 반환합니다. 함수 앱이 실행 중일 때 은 내가 소유자 인만큼 체크 아웃해야합니다. 나는 아무 소용이없는 서비스를 수신 거부하려고했습니다. (위의 접근 방법이 다른 리소스와 잘 작동한다고 언급 할 가치가 있습니다.)

무엇이 누락 되었습니까? 조정해야 할 기능 앱에 설정이 있습니까? 또는 AzureRm 계열의 cmdlet 또는 다른 API에서 비밀을 알아내는 다른 방법이 있습니까?

답변

1

CSRF 공격을 막기 위해 Kudu API는 명시 적으로 User-AgentContent-Type (소스 here)이 필요합니다.

관련 문제