Connector Service and authentication
As outlined in the architecture article there are different approaches to connecting a web service exposed by a remote system to Dynamicweb. To summarize:
|OData web services||Plug-in unit exposed web services|
|Cloud hosted remote||Authorized through the OAuth 2.0 protocol||Authorized through the OAuth 2.0 protocol|
|On-prem remote systems||NTLM or Basic authentication||Uses the Dynamicweb Connector Service as a bridge between the remote system and the Dyanicweb solution|
Communicating with a web service requires authentication regardless of where it is exposed and if it's accessed through the Connector Service or not. The following sections explain the methods of authenticating access to an endpoint from Dynamicweb including how to guides on setting up OAuth 2.0 for specific remote systems.
A data integration with a cloud hosted ERP will most likely, and regardless if it's OData or plug-in unit based, require an authentication through the OAuth 2.0 protocol.
Configuration of OAuth 2.0 involves some configuration in Azure Active Directory and the exact procedure depends somewhat on the system you wish to integrate with. You can read more about how to establish OAuth for the systems currently supported in Dynamicweb here:
Basic, NTLM and WSAK
Endpoints exposed from an on-prem solution via the Dynamicweb connector service or the Dynamicweb Connector TestTool can be accessed with authentications such as these:
- Basic: Authentication with a username and a password
- WebServiceAccessKey: Business Central can assign web access keys to users. These keys can be valid from one date and be invalid after a certain date. These keys are auto-generated and is used instead of a password. WebServiceAccessKeys can be used for on premise solutions as well as cloud-hosted test enviroments.
- Ntlm: NTLM is an authentication protocol used in windows networks. It allows you to provide a domain and windows user to access endpoints within the same network as the Dynamics ERP system. This is useful in development and on premise scenarios.
All three types of authentication can be configured in Dynamicweb by navigating to Settings > Endpoint Management > Add authentication.
To add an authentication of the three aforementioned kinds in the DynamicwebConnectorTestTool or DynamicwebConnectorService they must be inserted into the .exe.config files of the respective local applications.