0

我正在尝试从我的公司获得 Bing 广告支出。根据 Microsoft 文档,我了解到必须使用 Microsoft Azure 门户、get developer_tokenclient_idtenant_idclient_secret和访问/刷新令牌来下载csv包含我想要的数据的文件。

所以,这就是我所做的:

  1. 我收到了来自我公司的邀请,让微软在这个电子邮件地址上做广告: abc@myfirm.fr,并且我已经生成了我的开发者令牌。

  2. 使用这个电子邮件地址,我在 Microsoft Azure 门户上创建了一个 Web 应用程序,它允许所有用户王。获取client_id,tenant_id并生成client_secret.

  3. 我选择的重定向 URL 是http://localhost(根据文档但不确定这是选择的好 URL)。

  4. 使用 Postman,我已尝试使用此端点: https ://login.microsoftonline.com/common/oauth2/v2.0/authorize 以及 OAuth 2.0 身份验证获取我的访问令牌所需的参数(先前获得的)。没有成功。

问题就在这里。

当我请求访问令牌时,会打开一个新的浏览器窗口,并要求提供一个用于进行身份验证的电子邮件地址。我正在使用我的电子邮件地址abc@myfirm.fr并且我收到authentication completed了 Postman,但我收到了回复正文access_token: invalid

我帐户的角色是超级管理员。

因此,我尝试使用专业的 Microsoft Azure 帐户进行身份验证,这次我收到了浏览器Invalid redirect url

我还尝试使用不同的电子邮件地址重新开始,例如我的个人电子邮件地址或 Microsoft Advertising 帐户创建者的电子邮件地址,但我contact your system Admin在浏览器中收到错误消息。

我还尝试过使用文档中给出的 Python SDK 项目,并带有错误消息。

我一定是忘记或误解了什么。

我们是否应该在 Microsoft Advertising、Microsoft Azure 以及获取访问令牌时使用相同的电子邮件地址(或相同的帐户)?

您是否需要付费并订阅 Azure 订阅?(已经完成但没有成功)

提前谢谢,对不起我的英语。

编辑:

感谢您的回复。完整的请求是:https ://login.microsoftonline.com/common/oauth2/v2.0/authorize ,带有以下参数:

-类型:OAuth 2.0

- 标头前缀:承载

-授权类型:授权码

-回调地址:https://localhost

-Auth URL:https ://login.microsoftonline.com/{my-tenant_id}/oauth2/v2.0/authorize

-访问令牌 URL:https ://login.microsoftonline.com/{my-tenant_id}/oauth2/v2.0/token

-我的客户ID

-我的客户秘密

-scope:https ://ads.microsoft.com/ads.manage或者也使用https://graph.microsoft.com/User.Read进行测试

-状态:无

-客户端身份验证:在正文中发送客户端凭据

给我一个 access_token 但是当我点击使用令牌并发送请求时,我没有得到刷新令牌

4

1 回答 1

0

一旦用户提供同意,您就可以获得访问令牌并代表用户行事。

因此,当浏览器会话开始时,您应该输入您的 Microsoft Advertising 凭据

记得scope=https://ads.microsoft.com/ads.manage在获取授权码的请求中设置。

如果您希望自动执行此过程,可以参考此脚本和步骤来获取访问令牌。

于 2021-05-17T02:14:21.367 回答