gpt4 book ai didi

azure - 如何使用 Azure API 格式和 AD 身份验证访问 Application Insights 数据

转载 作者:行者123 更新时间:2023-12-02 07:10:40 24 4
gpt4 key购买 nike

我在任何地方都找不到例子!格式贴here在Applications Insights REST API 站点。这只是格式,没有示例。我认为我能够遵循该格式,但是当我尝试时,我收到一条错误消息“身份验证失败。‘授权’ header 丢失。”通常,要获取此 token ,您必须在 Azure AD 中注册您的应用程序并遵循该流程。我没有需要注册的应用程序。我想使用他们的 api/app。我想使用 Azure API 格式而不是公共(public) API 格式的原因是为了绕过 rate limit 。我们需要大约每分钟发出一次请求。救命!

最佳答案

根据您的描述,您需要首先创建一个服务原则,然后使用它来获取API token 消息。请引用此链接:Use portal to create an Azure Active Directory application and service principal that can access resources 。您将获得客户端 id(应用程序 id)和 client_secret。您可以使用以下脚本获取 token (使用Power Shell)。

##get token
$TENANTID="******"
$APPID="<client_id>"
$PASSWORD="<client_secret>"
$result=Invoke-RestMethod -Uri https://login.microsoftonline.com/$TENANTID/oauth2/token?api-version=1.0 -Method Post -Body @{"grant_type" = "client_credentials"; "resource" = "https://management.core.windows.net/"; "client_id" = "$APPID"; "client_secret" = "$PASSWORD" }
$token=$result.access_token

获得token后,需要构造header消息。如下所示:

$Headers=@{
'authorization'="Bearer $token"
'host'="management.azure.com"
'contentype'='application/json'
}

然后,您可以使用API​​来获取您想要的信息。

Invoke-RestMethod  -Uri $url  -Headers $Headers -Method GET

更新:

如果您想使用Applications Insights REST API,则不需要使用服务原理来获取 token 。您需要创建一个 API key 。请引用这个link

关于azure - 如何使用 Azure API 格式和 AD 身份验证访问 Application Insights 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45359867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com