问题描述 在上一篇博文<[Azure Developer]使用 adal4j(Azure Active Directory authentication library for Java)如何来获取Token呢 (通过用户名和密码方式获取Access Token)>中,介绍了使用ADAL4J SDK获取Access Token.而ADAL4J是非常旧的SDK,最新的SDK名称为 MSAL4J (Microsoft Authentication Libraries),原来的AcquireToke…
问题描述 使用中国区的Azure,在获取Token时候,参考了 adal4j的代码,在官方文档中,发现了如下的片段代码: ExecutorService service = Executors.newFixedThreadPool(1); AuthenticationContext context = new AuthenticationContext(AUTHORITY, false, service); Future<AuthenticationResult> future = conte…
问题描述 使用Python代码,展示如何从Azure AD 中获取目标资源的 Access Token. 如要了解如何从AAD中获取 client id,client secret,tenant id,请参考博文:[Azure Developer]Python代码通过AAD认证访问微软Azure密钥保管库(Azure Key Vault)中机密信息(Secret) 中的操作步骤一栏. 代码展示 获取方式一:使用 azure.identity 1)调用 ClientSecretCredential…
问题描述 在Azure开发中,我们时常面临获取Authorization问题,需要使用代码获取到Access Token后,在调用对应的API,如servicePrincipals接口. 如果是直接调用AAD的 OAuth 2.0 接口,可以通过https://login.chinacloudapi.cn/{tenant}/oauth2/v2.0/token来获取Token.操作步骤在博文<使用Postman获取Azure AD中注册应用程序的授权Token,及为Azure REST API设置…
问题描述 使用Azure密钥保管库(Key Vault)来托管存储账号(Storage Account)密钥的示例中,从Github中下载的示例代码在中国区Azure运行时候会遇见各种认证和授权问题,以下列举出运行代码中遇见的各种异常: "AADSTS90002: Tenant 'xxxxxxxx-66d7-xxxx-8f9f-xxxxxxxxxxxx' not found. This may happen if there are no active subscriptions for the…
问题描述 查看官方文档" Get a user " , 产生了一个操作示例的想法,在中国区Azure环境中,演示如何获取AAD User信息. 问题解答 使用Microsoft Graph API,演示如何获取AAD User信息,因参考文档是针对Global Azure,所以文档种的URL为: // Global Azure Microsoft Graph API HostGET https://graph.microsoft.com/v1.0/me 需要修改为 // 中国区Azur…
问题描述 在参考文档"使用 GitHub Actions 部署 ARM 模板"一文中,由于是在中国区Azure上操作,所以生产的部署凭证为中国区凭证.当创建工作流时,在登录到Azure这一步骤中,模板中使用指令为" - uses: azure/login@v1"在执行时,遇见了登录到global的错误. 错误消息为:Error: Az CLI Login failed. 问题解决 从错误消息就可以发现,这是因为默认情况下,Github Action中设定的指令&qu…
问题描述 在先前的一篇博文中,介绍了如何使用Microsoft Graph API来创建Azure AD用户(博文参考:[Azure Developer]使用Microsoft Graph API 如何批量创建用户,用户属性中需要包含自定义字段(如:Store_code,Store_name等),但是在调用创建AAD用户之前,因为请求的Header中必须包含Authorization:Bearer {token}值. 在中国区获取Graph API的Authorization可以参考调用专用的A…
问题描述 使用Github Action,通过 Azure/functions-container-action@v1 插件来完成 yaml 文件的配置,并成功部署Function Image 的过程记录. 操作步骤 第一步: 准备Function的镜像文件 如在VS Code中,通过Terminal(命令行窗口),根据所使用的语言,创建或初始化DockerFile func init --worker-runtime python --docker # --docker 选项生成该项目的 Do…
本章全是干货,干货,干货,重要的事情说三遍. 最近在研究Azure, Cloud相关的东西,项目中用的是Graph API(这个在下一章会相信介绍),可能是Graph API推出的时间比较晚,部分API还在开发中,所以难免出现部分功能支持不完善,issue之类的,当然Microsoft也在不断更新完善中,期待Graph API时代的到来. 针对以上的问题,有时在项目中不得不采取一些非常规的手段,调用Microsoft backend API,什么是backend API呢,就是我们用Fiddle…