How to Configure Access for Scribe Online for Dynamics 365 for Operations (AX7) Integration

by | Oct 1, 2016 | Dynamics 365 for Finance and Operations, Dynamics CRM

I was recently working with a client where we had deployed Dynamics 365 for Operations (AX7). One of the initiatives was to enable integration between Dynamics 365 for Operations and Scribe Online. Scribe Online has a variety of platforms where it can help enable integration. My client needed to setup integration between CRM Online and Dynamics 365 for Operations (AX7).

There are two pieces to enabling integration between Dynamics 365 for Operations (AX7) and CRM online. The first piece is setting up the connecting agent and depending on your scenario it may be an On-Premise agent or it may be a Cloud agent. For the integration I was doing, it was a Cloud agent. The initial setup was almost a breeze, however, there was a key field that required a little additional work to get the integration working correctly.

Setting up a connection from Scribe to Dynamics AX

First, a connection to Dynamics AX was required, to do this the following steps were done:

  1. Create a New Connection in Scribe
  2. Select Microsoft Dynamics AX as the Type and then enter the following bits of information:

Connection name — I typically name it for the environment.

Connection alias — Alias for Connection name (I typically name it the same as above w/o spaces).

Block color — A nice color coding option used for a visual reference to distinguish connections.

OData Service URL — The address of any acceptable URL where the OData service is located. This URL must end in /data.

User — The name of the user who has rights to access OData.

Password — Dynamics 365 for Operations authorized user that can access the oData feed.

Client Id — The GUID that identifies the client in the Dynamics AX system.

Authentication URL — The URL where the Client Id is verified which is the Microsoft Tenant URL:

Here is what an almost configured connection looks like:

Manage Connections: New

How to Configure the Client ID

The missing piece and the purpose of this blog is to explain and show how to configure the Client Id.  The Scribe Online documentation was pretty vague as to what or how to get the Client Id.

What is helpful to know is that Dynamics 365 for Operations (AX7) has 2 types of authentication mechanisms which are:

  1. User Authentication
  2. Services Authentication (OAuth)

User authentication looks like this:

User Authentication

And acts like this:

  • The User authenticates against their AAD
  • The User presents a set of claims to AX (claims-based authentication)
  •  Instead of a windows token (like on-premise AD) a user presents a set of claims saying my name is so and so and I belong to this tenant and this tenant has a subscription of AX.
  •  The Dynamics 365 for Operations (AX7) security subsystem says, all right, I’m going to verify your claims and look to see if you’re a valid user.  If you’re a valid user, I’m going to look at all the security rules that are associated with you and then I’m going give you access to the system.

Service authentication, on the other hand, looks like this:

Josh L_Service Authentication

And acts like this (the part in red we will come back to in a minute):

  1. User authenticates, creates user agent in AAD and consents to service(s) access
  2. The client receives Authorization code (Client ID)
  3. Now, the client can request access to resources with the authorization code
  4. AAD verifies authorization code and passes the client back an Access token
  5. The client now requests data from Dynamics 365 for Operations (AX7) with the Access token
  6. Hopefully, the client now receives the data

On a side note, OData Services, JSON-based Custom Service, and REST Metadata Services all support standard OAuth 2.0 authentication.

This part is critical to understand as this is the missing link.  Scribe Online is a service that needs to access Dynamics AX without a user being present (it’s a service and as such will follow service authentication).

To get scribe the Authorization code (Client Id) what is required is the following:

Josh L_Microsoft Azure
  • Click on your Domain
Active Directory
  • Click on Applications
Directory Applications
  • Click Add
Add
  • Select Add an application my organization is developing

Add an Application my organization is developing

  • Provide a name for the application and select Native Client Application

Native Client Application

There are two kinds of application are supported in Microsoft Azure Active Directory (AAD):

  1. Native client application – This flow uses a user name and password for authentication and authorization.
  2. Web application (Confidential client) – A confidential client is an application that can keep a client password confidential to the world. The authorization server assigned this client password to the client application.
  • Enter a URI (doesn’t matter) and click the check mark to complete the setup.
Application Information
  • You will land on the application page, click configure
Scribe Online Configure
  • Here you will find the golden goose, the Client Id!

 

Scribe OnlineClient ID

 

  • Continue to scroll down to the bottom to permissions to other applications
  • Click Add application and select Microsoft Dynamics ERP then click the check mark in the lower right-hand corner

Permissions to other applications

Permissions to other applications

 

  • When you return to the application page, select Microsoft Dynamics ERP and in the drop down select all check boxes

Add applications

You are now set to go back into the Scribe Connector and paste in the Client ID!

  • Once you have completed this, the only remaining piece is configuring Scribe Online to connect to Dynamics CRM online. The previous connection was for connecting Scribe Online to Dynamics AX.

 

Hopefully, this will help understand why you need the client ID and where you can get it from.

Add applications

 

 

Related Posts

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Upcoming Events

july

29jun(jun 29)8:00 am06jul(jul 6)5:00 pmMicrosoft Dynamics GP Core Financials Bootcamp

07jul1:00 pm1:30 pmHow to Implement Microsoft Dynamics: Bringing It All Together

08jul10:00 am11:00 amOn the Job with Dynamics 365 - Manufacturing Planner

08jul2:00 pm2:30 pmHow Ag Retailers and Ag Coops Should Structure IT Resources for the Future

16jul11:00 am12:00 pmConfab with Stoneridge - Livestream - Business Intelligence Power Hour

22jul10:00 am11:00 amOn the Job with Dynamics 365 - Manufacturing Material Handler

22jul12:00 pm1:00 pmImprove Field Service Delivery and Increase Customer Satisfaction

august

05aug10:00 am11:00 amOn the Job with Dynamics 365 - Manufacturing Shipping / Receiving Department

05aug12:00 pm1:00 pmHow Ag Retailers Can Simplify Processing Equity Payments using Levridge

12aug10:00 am10:30 amWhy Levridge Grain? How to Achieve Efficient and Accurate Scale Tickets

12aug12:00 pm1:00 pmThe Three Paths to Dynamics 365 Finance and Supply Chain from Dynamics AX

13aug11:00 am12:00 pmConfab with Stoneridge - Livestream - Dynamics 365 2020 Wave 2 Review

19aug10:00 am11:00 amWhat is Levridge? An Overview of the Ultimate Ag Solution

About Stoneridge
Stoneridge Software is a unique Microsoft Gold Partner, with emphasis on partner. With specialties in Microsoft Dynamics 365, Microsoft Dynamics AX, Microsoft Dynamics NAV, Microsoft Dynamics GP and Microsoft Dynamics CRM, we focus on attracting the most knowledgeable experts in the field to our team, and prioritize delivering stellar solutions with maximum impact for your business. At Stoneridge, we are deeply committed to your results. Each engagement is met with a dedicated team, ready to provide thorough, tailored, and expert service. Based in Minnesota, we intentionally “step into your shoes,” wherever you are. We focus on what you care about, and develop trusting, long-term relationships with our clients.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!

X