Dynamics crm 绕过Dynamics CRM中的登录
我目前正在尝试使用Web API查询方法从Dynamics CRM(Office 365-E5)获取数据,如Dynamics crm 绕过Dynamics CRM中的登录,dynamics-crm,microsoft-dynamics,Dynamics Crm,Microsoft Dynamics,我目前正在尝试使用Web API查询方法从Dynamics CRM(Office 365-E5)获取数据,如API.CRM.Dynamics.com/API/data/v8.2/accounts?$select=accountid、name、new\u gl\u exp、new\u autol\u exp 我将在外部应用程序(使用HTML和Javascript开发)中包含此api,并托管在本地IIS中 我已经在CRM和Azure中完成了基本设置,并在登录login.microsoft.com 问
API.CRM.Dynamics.com/API/data/v8.2/accounts?$select=accountid、name、new\u gl\u exp、new\u autol\u exp
我将在外部应用程序(使用HTML和Javascript开发)中包含此api,并托管在本地IIS中
我已经在CRM和Azure中完成了基本设置,并在登录login.microsoft.com
问题
login.microsoftonline.com
login.microsoft.com
)或任何REST API
我们使用单独的登录应用程序,所以我们将不得不使用两个登录
login.microsoft.com
用于Dynamics CRMWeb API身份验证模式 在使用Web API时,有三种不同的方法来管理身份验证 在web资源中使用JavaScript 当您在HTML Web资源、表单脚本或功能区命令中使用带有JavaScript的Web API时,不需要包含任何用于身份验证的代码。在每种情况下,应用程序都已经对用户进行了身份验证,并且由应用程序管理身份验证 内部部署 在使用Web API进行内部部署时,必须包含用户的网络凭据。以下示例是一个C#函数,它将返回为给定用户的网络凭据配置的HttpClient:
private HttpClient getNewHttpClient(string userName,string password,string domainName, string webAPIBaseAddress)
{
HttpClient client = new HttpClient(new HttpClientHandler() { Credentials = new NetworkCredential(userName, password, domainName) });
client.BaseAddress = new Uri(webAPIBaseAddress);
client.Timeout = new TimeSpan(0, 2, 0);
return client;
}
使用Microsoft Dynamics 365(在线)或面向internet的部署
当您使用Dynamics 365的Web API(联机)或内部部署面向Internet的部署(IFD)时,必须使用OAuth,如使用OAuth连接到Microsoft Dynamics 365 Web服务中所述
如果要使用JavaScript创建单页应用程序(SPA),可以使用adal.js库,如使用OAuth和跨源资源共享中所述,将单页应用程序连接到Microsoft Dynamics 365
听起来您对应用程序用户感兴趣。也许会有帮助。