使用具有单一登录功能的OAuth连接到Dynamics 365(在线)(Office 365) [英] Connect to Dynamics 365 (online) (Office 365) using OAuth with Single Sign On

查看:133
本文介绍了使用具有单一登录功能的OAuth连接到Dynamics 365(在线)(Office 365)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,我正在尝试通过单点登录Azure AD连接到Microsoft Dynamics组织服务.没有提供用户名和密码,我找不到任何有效的代码示例.我们在Azure AD中创建了一个应用注册,并在下面的代码中使用它.

Hi, I am trying to connect to the Microsoft Dynamics organizationservice via single sign on to Azure AD. I cannot find any code sample that works without providing username AND password. We created an App Registration in Azure AD and use it in the code below.

这是应该起作用的代码,但无法连接.

This is the code that should work, but it doesn't connect.

有人可以帮忙吗?

私有子Button1_Click(作为对象发送,作为EventArgs发送)处理Button1.Click
   昏暗的区域为String = String.Empty
    Dim orgName As String = String.Empty
    Dim isOnPrem为Boolean = False
    Dim originalUrl As String =" do.api.crm4.dynamics.com/.../organization .svc "

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim region As String = String.Empty
    Dim orgName As String = String.Empty
    Dim isOnPrem As Boolean = False
    Dim originalUrl As String = "do.api.crm4.dynamics.com/.../organization.svc"

   Utilities.GetOrgnameAndOnlineRegionFromServiceUri(New Uri(originalUrl),region,orgName,isOnPrem)

    Utilities.GetOrgnameAndOnlineRegionFromServiceUri(New Uri(originalUrl), region, orgName, isOnPrem)

  字符串形式的Dim路径= IO.Path.Combine(IO.Path.GetTempPath(),"oauth-cache.txt")

    Dim path As String = IO.Path.Combine(IO.Path.GetTempPath(), "oauth-cache.txt")

  昏暗的crmSvc =新的CrmServiceClient(CrmUserId,CrmServiceClient.MakeSecureString(crmPassword),
                   地区,
                    orgName,
                   假,
                   没什么
                   没什么
                    "74c5e5c9-52db-4cee-54cb-e213e8f223ea"",
                   新的Uri(" http://crm.company.nl "),
                   路径,什么也没有,Microsoft.IdentityModel.Clients.ActiveDirectory.PromptBehavior.Auto)

    Dim crmSvc = New CrmServiceClient(CrmUserId, CrmServiceClient.MakeSecureString(crmPassword),
                    region,
                    orgName,
                    False,
                    Nothing,
                    Nothing,
                    "74c5e5c9-52db-4cee-54cb-e213e8f223ea",
                    New Uri("http://crm.company.nl"),
                    path, Nothing, Microsoft.IdentityModel.Clients.ActiveDirectory.PromptBehavior.Auto)

   ''crmSvc.isReady为FALSE.

    '' crmSvc.isReady is FALSE.

   crmSvc =新的CrmServiceClient(CrmUserId,CrmServiceClient.MakeSecureString(crmPassword),
                   地区,
                    orgName,
                   是的,
                   是的,
                   没什么
                   是的)
 
    ''crmSvc.isReady为TRUE.

    crmSvc = New CrmServiceClient(CrmUserId, CrmServiceClient.MakeSecureString(crmPassword),
                    region,
                    orgName,
                    True,
                    True,
                    Nothing,
                    True)
 
    '' crmSvc.isReady is TRUE.

   MessageBox.Show(crmSvc.IsReady.ToString())

    MessageBox.Show(crmSvc.IsReady.ToString())

 结束Sub

  End Sub

推荐答案

您好,Marco,

Hi Marco,

Before you can use OAuth authentication to connect with the Dynamics 365 web services, your application must first be registered with Azure Active Directory. Azure Active Directory is used to verify that your application is permitted access to the business data stored in a Dynamics 365 tenant. Follow this document to Register a Dynamics 365 app with Azure Active Directory.

The recommended authentication API for use with the Dynamics 365 Web API is Azure Active Directory Authentication Library (ADAL), which is available for a wide variety of platforms and programming languages. The ADAL API manages OAuth 2.0 authentication with the Dynamics 365 web service identity provider. Follow this document for detailed information on how to Connect to Dynamics 365 Customer Engagement web services using OAuth.


这篇关于使用具有单一登录功能的OAuth连接到Dynamics 365(在线)(Office 365)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆