c# - 可以登录本地组织

标签 c# authentication dynamics-crm-2011

不是拼写错误。我的问题是我可以登录。我们的 CRM 服务器可以通过我登录的 VPN 访问。然后,我运行以下代码。

ClientCredentials credentials = new ClientCredentials();
String orgUrl = "http://server/konrad01/XRMServices/2011/Organization.svc";
OrganizationServiceProxy _serviceProxy = new OrganizationServiceProxy(
  new Uri(orgUrl), null, credentials, null);

这是一个全新的组织,里面什么都没有。当我列出例如系统用户,我得到了点击,所以显然我能够连接到它。但如何?!

我已经经历了我能想到的一切。我删除了所有互联网历史记录,包括但不限于cookie。我从控制面板的凭据管理器中删除了对服务器的所有引用。我禁用了服务器所在 RDP 上登录凭据的存储。没什么!持久鸭子(预期类型)仍然连接。如何使其连接?! (除非我提供凭据。)

最佳答案

假设:

  • 您有一个简单的本地部署。
  • 您正在使用简单的事件目录身份验证。
  • 运行应用程序的用户拥有 CRM 中的权限。

由于当应用程序连接到 CRM 时,您没有在 ClientCredentials 中指定任何特定用户,因此它提供了运行该应用程序的用户的凭据。

该用户在 CRM 中拥有权限,因此他们可以进行身份​​验证并执行操作。

要对此进行测试,请尝试以没有 CRM 权限的用户身份运行应用程序,并查看他们是否仍然能够连接。

进一步阅读:

关于c# - 可以登录本地组织,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14837356/

相关文章:

windows - 如何向 linux 服务器进行身份验证(从 Windows 客户端)

c# - 如何在服务器端获取 MS Dynamics CRM 中的当前用户权限

c# - 为什么在面向 .netstandard 1.3 时不能使用嵌入式资源 (resx)?

java - 发现 nn/hadoop-kerberos@HADOOP-KERBEROS 不支持的 key 类型 (8)

c# - Powershell:二进制模块与脚本模块

winapi - 在登录屏幕上将密码发送到远程计算机 [Windows 7]

.net - 在 Microsoft CRM 4.0 中使用 Web 服务与使用动态实体

dynamics-crm-2011 - 微软动态 CRM 2011 : how to retrieve dashboard owners?

c# - 在哪里创建/获取/缓存 ViewModels?

c# - Entity Framework 创建重复的实体