gpt4 book ai didi

java - 合作伙伴中心 Java SDK (Azure)

转载 作者:行者123 更新时间:2023-12-01 23:24:27 25 4
gpt4 key购买 nike

我需要您的帮助,我正在使用 Azure 合作伙伴中心 SDK (java) 创建与 azure 云的链接。我使用以下代码来执行身份验证部分,Microsoft 文档中提到了它。

IAggregatePartner partnerOperations = PartnerCredentials.getInstance().generateByApplicationCredentials(
"ApplicationId"
"ApplicationSecret",
"AccountId");

但是当我运行代码时出现此错误:

**Exception in thread "main" PartnerException: ErrorCategory: NOT_SPECIFIED, ServiceErrorPayload: null, Context: null, Base Description: com.microsoft.store.partnercenter.exception.PartnerException: Failed to do the application AAD login
at com.microsoft.store.partnercenter.extensions.ApplicationPartnerCredentials.authenticate(ApplicationPartnerCredentials.java:172)
at com.microsoft.store.partnercenter.extensions.PartnerCredentials.generateByApplicationCredentials(PartnerCredentials.java:69)
at com.microsoft.store.partnercenter.extensions.PartnerCredentials.generateByApplicationCredentials(PartnerCredentials.java:50)
at com.contoso.PartnerApp.App.main(App.java:19)
Caused by: java.lang.IllegalArgumentException: authority Uri should have at least one segment in the path (i.e. https://<host>/<path>/...)
at com.microsoft.aad.msal4j.Authority.detectAuthorityType(Authority.java:72)
at com.microsoft.aad.msal4j.ClientApplicationBase$Builder.authority(ClientApplicationBase.java:257)
at com.microsoft.store.partnercenter.extensions.ApplicationPartnerCredentials.authenticate(ApplicationPartnerCredentials.java:155)**
... 3 more

感谢您的帮助。

最佳答案

根据您的错误消息,您没有提供有效的权限Uri。如果您想使用Azure合作伙伴中心SDK(java)完成应用身份验证,建议您使用该方法

 public IPartnerCredentials generateByApplicationCredentials(String clientId, String applicationSecret,
String aadApplicationDomain,
String aadAuthorityEndpoint,
String graphEndpoint

例如

  1. 更新网络应用程序并配置所需的权限。更多详情请引用https://learn.microsoft.com/en-us/partner-center/develop/create-apps-for-partner-center-for-microsoft-national-clouds#web-apps .

  2. 在合作伙伴中心获取您需要的信息 enter image description here

  3. 编写代码


String clientId="the applicationId of your app you create";
String applicationSecret="the app secrret";
String aadApplicationDomain ="your account id ";
String aadAuthorityEndpoint="https://login.windows.net/";
String graphEndpoint="https://graph.windows.net";

IPartnerCredentials appCred = PartnerCredentials.getInstance().generateByApplicationCredentials( clientId,applicationSecret,aadApplicationDomain,aadAuthorityEndpoint,graphEndpoint);

IAggregatePartner partnerOperations = PartnerService.getInstance().createPartnerOperations(appCred);

Customer customer = partnerOperations.getCustomers().byId("e4c9ab4e-bd27-40d5-8459-230ba2a757fb").get();
System.out.print("The custom's Commerce ID : " + customer.getCommerceId());

enter image description here

更新

关于如何配置权限,请引用下图

enter image description here

enter image description here

enter image description here

关于java - 合作伙伴中心 Java SDK (Azure),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58311335/

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