gpt4 book ai didi

php - 通过代码添加多个域Azure应用程序

转载 作者:行者123 更新时间:2023-12-03 00:14:11 26 4
gpt4 key购买 nike

您好,我在 Azure 服务器中运行 PHP CRM,我的要求是用户应该能够通过 CRM 站点自行添加自己的自定义域(他们将单独进行 DNS 配置)到应用程序,是否有任何 REST API 调用为了实现这一点,我进行了很多搜索,但找不到来自Azure的任何文档,我确实从堆栈中找到了这些 Programatically add domain name to azure website

Add a domain to an Azure web site via code

我尝试使用 Chrome Postman 应用程序进行上述示例

应用程序(instanceName)名称名称是“example”

"https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{myResourceGroup}/providers/Microsoft.Web/sites/{instanceName}/config/web?api-version=2015-08-01"

同时使用 POST 和 PUT 方法

{ "properties": { "HostNames":"example.com, crm.example.com" } }

我尝试了这些方法,但都收到错误“身份验证失败。‘授权’ header 不存在或以无效格式提供”,我相信 json 值有问题,

example.com.au 是我现有的网站,crm.example.com 是我要添加的域名,它是否正确,我是否缺少任何内容,请帮助我

最佳答案

因为使用 Azure 资源管理器对资源执行的所有任务都必须通过 Azure Active Directory 进行身份验证。因此,要实现 Azure 资源管理器 Rest API,我们需要按照 authenticate Azure Recourse Manager requests 中的步骤操作。首先设置身份验证。

一般情况下:

  1. 将应用程序添加到 Azure Active Directory 租户。

  2. 为您添加的应用程序设置权限。

  3. 获取用于对 Azure 资源管理器请求进行身份验证的 token 。

--更新--

要获取 Azure 资源管理器的访问 token ,我们应该按照Authorization Code Grant Flow中显示的步骤进行操作。 :

1,请求授权码 enter image description here构建的 URL 将重定向到 sso 页面,登录后我们可以获取下一步使用的 code 值。

2、使用授权码请求Access Token: enter image description here

3,我们可以利用访问 token 来授权资源REST API: enter image description here

--更新1--

要创建仅应用程序而无需用户 ui 应用程序,您需要遵循 client_credentials 流程,如 https://msdn.microsoft.com/en-us/library/azure/dn645543.aspx 所示。 。

对于您的授权问题,您需要分配所有者角色以获得书面权限。您可以利用 azure-cli 来执行此操作。

  1. Install theAzure-CLI .
  2. Connect to theAzure-CLI.
  3. Authenticate to your Service Principal using the Azure-CLI.在本节的第 4 步中,您需要将 Reader 更改为 Owner,喜欢azure 角色分配 create --objectId 47193a0a-63e4-46bd-9bee-6a9f6f9c03cb -o Owner -c/subscriptions/{subscriptionId}/ 用于分配写入权限。

关于php - 通过代码添加多个域Azure应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33383583/

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