问题标签 [service-principal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - 使用 Azure KeyVault,在 Azure Active Directory 租户中找不到对象
使用 Azure KeyVault,我按照本指南设置了 ResourceGroup、KeyVault 和 Key:
https://azure.microsoft.com/en-gb/documentation/articles/key-vault-get-started/
我已经在 Active Directory 中设置了应用程序客户端。但是,当我尝试使用时:
向服务主体帐户授予权限时出现以下错误:
“在租户‘ tenantId ’中找不到 Active Directory 对象‘ clientId ’。请确保您正在授权的应用程序服务主体的用户已在当前订阅的 Azure Active Directory 中注册。”
clientId 是正确的,因为它是从门户中的应用程序配置页面复制的。租户 ID 是当前订阅的租户 ID。但不是活动目录的租户 ID。
问题似乎是 Active Directory 的租户 ID 与我正在使用的订阅的租户 ID 不同。如何在 Azure 门户中更改我的 Active Directory 的租户 ID 以匹配订阅租户 ID?
powershell - AzureAD powershell 新服务主体
如何使用 powershell 为服务主体设置回复 URL。当我检查管理门户时,以下命令不会向该字段添加任何内容。
- $aa = new-AzureADApplication -DisplayName "Name" -HomePage "addr" -IdentifierUris "addr"
- 新 AzureADServicePrincipal -ApplicationId $aa.ApplicationId
- .....设置角色等
IdentifierUris 似乎只填充 APP ID URI。它需要一个数组,但是当我做这样的事情时,天蓝色会响应一个内部错误:要么
或者
或者
是否可以通过powershell设置此字段?
powershell - AzureAD PowerShell New-AzureRmRoleAssignment 不断失败
我正在编写一个 powershell 脚本,该脚本将创建一个资源组,将包含的应用程序(在本例中为 Web Api)注册到关联的 AAD。但是,当调用试图分配Reader
权限时,它一直失败。
我从 Visual Studio (2015) 中 AzureResourceGroup 模板附带的基本 deploy*.ps1 文件开始。
我正在运行以下代码:
最后一个命令 ( New-AzureRmRoleAssignment
) 继续失败并出现以下错误:
通常,我使用 Visual Studio 中的部署选项来运行此脚本。当我从Microsoft Azure PowerShell
命令窗口运行这个脚本时,我得到了同样的错误。
但是,当我在同一个 powershell 窗口中运行确切的命令时,它可以工作!
有人知道为什么这会在 ps1 文件中失败吗?我也尝试明确定义范围,但这也没有成功。
.net - 在 Azure 中保护您是应用程序的 ClientId 和 SecretKey
保护ClientId
和SecretKey
避免服务身份冒充的指导是什么?
这些用于ServicePrincipal
在 Azure Active Directory 中使用OAuth
.
目前,我们在无状态服务中使用配置设置。
在线建议建议将敏感数据存储在其中,KeyVault
但为了检索它,服务需要证明其身份,因此需要ClientId
和SecretKey
.
我正在考虑加密的配置文件。
azure - 调用 New-AzureRmADApplication 时无法将 TokenCloudCredentials 转换为 AccessTokenCredential
我正在编写一个 PowerShell 部署脚本,它可以自动创建我的 Azure 资源和随附的 ServicePrincipal。
这是我正在使用的代码,我在使用最新的 Azure 1.0.4 SDK 模块直接从 PowerShell 运行时对其进行了测试和工作:
当我在 Visual Studio 中使用我的 ResourceGroup 项目部署脚本运行此代码时,我收到以下错误:
New-AzureRmADApplication:无法将“Microsoft.Azure.TokenCloudCredentials”类型的对象转换为“Microsoft.Azure.Common.Authentication.AccessTokenCredential”类型。
根据堆栈跟踪,异常是在命令 New-AzureRmADApplication 开始时引发的,因此不幸的是,异常是在 Azure SDK 代码内部发生的。
我在以下文件中浏览了 SDK 的源代码,但找不到任何见解:
我只能在此链接中找到一个遇到同样错误的人: https ://azure.microsoft.com/en-us/documentation/articles/resource-group-authenticate-service-principal/
但是,那里的解决方案对我没有意义,因为我没有使用管理证书进行身份验证,并且在 manage.windowsazure.com 站点上没有列出任何管理证书。
iis-7 - 当开发人员没有 AD 权限时,如何在本地计算机上测试 IIS Kerberos 身份验证
我有一个 Web 应用程序,我正在切换为使用 Kerberos 身份验证。我无权访问 AD 来创建 SPN。我试图在本地创建一个 SPN 无济于事,根据这个问题的答案,这首先是不可能的。有没有其他方法可以在不使用 SPN 的情况下测试在 IIS 中运行的站点的 Kerberos 身份验证?
azure - How do I Choose which AAD you Create the Service Principal in?
I can't find any documentation on how to choose which AAD to create the service principal in. Basically, I can't find out if there is even a way to add the SP to the local AAD.
So we have a default Global AD which covers all of our enrollment and below that all subscriptions. I'm using Powershell derived from the many many examples on the net to create a SP in the default AD. Then I permission that SP against the subscription it is going to be working in.
At this point I've run into the following problem. I'm rolling out a Key Vault, this works.
I need to add the first secret into it as part of the deployment. This bit fails because the SP doesn't have access to the KV.
This is the result of that command.
Reading into this, its not possible to set the Global AD Service Principal to have get/set on the local Keyvault. it would have to be a local Service Principal. However, we dont have one of them and nowhere can I work out how to create one of them.
Anyone else feeling this pain and know how to resolve it?
azure - 使用“Login-AzureRmAccount -ServicePrincipal”进行身份验证但未设置订阅?
我已经使用 New-AzureRmADApplication 和 New-AzureRmADServicePrincipal cmdlet 成功创建了具有应用程序和服务原则的自签名证书。
检索证书后,我可以使用此命令执行登录:
但是,此身份验证的 SubscriptionId/SubscriptionName 属性显示为空白:
随后,此命令有效!
令我困惑的是,我能够在我的 DEV 订阅中检索 AzureKeyVaultSecret,但我不明白这个 cmdlet 如何知道要使用我的哪个订阅???我打算在我的 PROD 订阅中创建相同的保管库,但首先需要了解此 ServicePrincipal/Certificate 身份验证如何知道要从哪个订阅中提取和/或如何操作它?
我可以说,当我创建 App/ServicePrincipal 时,我登录时指定了“DEV”订阅,如下所示:
powershell - Azure 预配 - 无需手动登录
我有一个 Powershell 脚本,用于设置 Azure Web 应用程序、数据库等,但在运行脚本之前,我必须执行以下操作:
这会弹出一个 GUI,我必须在其中手动添加我的用户、密码和我的 2 因素身份验证代码。我最终想将该脚本用作构建/部署自动化脚本的一部分。
我从几篇关于使用“服务主体”的文章中收集到以下内容。
首先我这样做:
在这个调用中,我必须输入我的用户、密码和验证码
之后我必须执行以下操作(即使我不完全理解)。
这似乎有效:
然后我试试这个,它失败了。
我收到以下错误:
我必须做什么才能在没有人工干预的情况下启用脚本授权?