0

我在使用 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) 一起工作吗?

4

1 回答 1

1

CRM 2011 oData 端点不支持来自 CRM 应用程序外部的连接。

对于 CRM 2011,您唯一的选择是 SOAP 端点。

关于身份验证,这是另一个问题,您应该查看一些 PHP 示例(也在 StackOverflow 上),这些示例显示了如何连接到 CRM 2011

编辑:这里有一个 Python 示例:http: //jlattimer.blogspot.com.au/2015/08/soap-only-authentication-using-python.html

于 2015-12-18T14:39:21.420 回答