XrmTooling中的PowerShell Get-CrmConnection不再工作

xqkwcwgp  于 2024-01-08  发布在  Shell
关注(0)|答案(1)|浏览(181)

我有一段生成CrmConnection的PowerShell代码。我在4-5个月前尝试了这段代码,它确实起作用了。然而,由于某种原因,我现在运行它时出现以下错误。我可以确认$clientId$clientSecret$url是正确的。
密码,

  1. function New-PP-Connection
  2. {
  3. param(
  4. [Parameter(Mandatory)] [string] $clientId,
  5. [Parameter(Mandatory)] [string] $clientSecret,
  6. [Parameter(Mandatory)] [string] $url
  7. )
  8. [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
  9. $moduleName = "Microsoft.Xrm.Tooling.CrmConnector.PowerShell"
  10. $connectionString = "AuthType=ClientSecret;url=$url;ClientId=$clientId;ClientSecret=$clientSecret"
  11. if(-not(Get-Module -ListAvailable -Name $moduleName)){
  12. Install-Module $moduleName -Scope CurrentUser
  13. }
  14. Import-Module $moduleName
  15. write-host "Creating dynamics connection"
  16. $crmClient = Get-CrmConnection -ConnectionString $connectionString;
  17. write-host "Crm Client Created"
  18. }

字符串
错误x1c 0d1x的屏幕截图
错误文本,
Get-CrmConnection:无法连接到CRM:登录信息无效:HTTP请求未经授权,客户端身份验证方案为“匿名”
我在GitHub https://github.com/microsoft/coe-starter-kit/issues/2564中看到过类似的问题,但没有提供确切的解决方案。

siv3szwd

siv3szwd1#

我可能在Microsoft.Xrm.Tooling.CrmConnector.PowerShell中遇到了一个bug,上面的代码只有在每个应用程序注册有一个秘密时才能工作。我为这个应用程序注册了两个秘密。只要我删除一个,它就开始工作了。

相关问题