使用 Python 和 subs 连接到 Dynamics CRM 2011
Connecting to DynamicsCRM2011 with Python and subs
我在使用 suds 模块通过 Python 连接到 DynamicsCRM2011 时遇到问题。我收到以下错误:
suds.transport.TransportError: HTTP Error 401: Unauthorized
我当前的代码:
from suds.transport.https import WindowsHttpAuthenticated
from suds.client import Client
import json, requests
from suds.wsse import *
url = 'https://crm.internal.website/internal.project/xrmservices/2011/OrganizationData.svc?WSDL'
security = Security()
token = UsernameToken('', '')
token.setnonce('MyNonceString')
token.setcreated(datetime.now())
security.tokens.append(token)
ntlm = WindowsHttpAuthenticated(username='', password='')
client = Client(url, transport=ntlm)
client.set_options(wsse=security)
在调试过程中,我发现无法在 STS Microsoft 服务器上进行身份验证。
感谢任何帮助。有人至少可以解释一下身份验证过程如何与 DynamicsCRM (2011) 一起使用吗?
CRM 2011 oData 端点不支持来自 CRM 应用程序外部的连接。
对于 CRM 2011,您唯一的选择是 SOAP 端点。
关于身份验证,这是另一个问题,您应该查看一些显示如何连接到 CRM 2011 的 PHP 示例(也在 Whosebug 上)
编辑:这里有一个 Python 示例:
http://jlattimer.blogspot.com.au/2015/08/soap-only-authentication-using-python.html
我在使用 suds 模块通过 Python 连接到 DynamicsCRM2011 时遇到问题。我收到以下错误:
suds.transport.TransportError: HTTP Error 401: Unauthorized
我当前的代码:
from suds.transport.https import WindowsHttpAuthenticated
from suds.client import Client
import json, requests
from suds.wsse import *
url = 'https://crm.internal.website/internal.project/xrmservices/2011/OrganizationData.svc?WSDL'
security = Security()
token = UsernameToken('', '')
token.setnonce('MyNonceString')
token.setcreated(datetime.now())
security.tokens.append(token)
ntlm = WindowsHttpAuthenticated(username='', password='')
client = Client(url, transport=ntlm)
client.set_options(wsse=security)
在调试过程中,我发现无法在 STS Microsoft 服务器上进行身份验证。
感谢任何帮助。有人至少可以解释一下身份验证过程如何与 DynamicsCRM (2011) 一起使用吗?
CRM 2011 oData 端点不支持来自 CRM 应用程序外部的连接。
对于 CRM 2011,您唯一的选择是 SOAP 端点。
关于身份验证,这是另一个问题,您应该查看一些显示如何连接到 CRM 2011 的 PHP 示例(也在 Whosebug 上)
编辑:这里有一个 Python 示例: http://jlattimer.blogspot.com.au/2015/08/soap-only-authentication-using-python.html