首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何以编程方式登录到Sitecore?

如何以编程方式登录到Sitecore?
EN

Stack Overflow用户
提问于 2010-07-13 15:02:48
回答 3查看 4.2K关注 0票数 4

如何以编程方式登录到Sitecore?例如,如果您想要将Sitecore API的一小部分连接到桌面应用程序,则需要首先登录sitecore以访问数据库等。

这可以做到吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-07-13 21:11:04

正如Mark所说,您将需要创建一个您的桌面应用程序将与之对话的web服务。如果您需要处理该服务中的权限,您有两个选择。

  1. 使用SecurityDisabler使您的user服务在管理员用户的上下文中运行。

使用( Sitecore.SecurityModel.SecurityDisabler()) { //在这里做东西}

  • 要获得更具体的控件,可以使用UserSwitcher。

Security API Cookbook页面34

string domainUser =@“域\用户”;如果为假{ Sitecore.Security.Accounts.User user = Sitecore.Security.Accounts.UserSwitcher(user)) domainUser);使用(Sitecore.Security.Accounts.User{ //TODO:要作为用户调用的代码} }

票数 5
EN

Stack Overflow用户

发布于 2010-07-13 16:45:16

不怎么有意思。但是,您可以为桌面应用程序编写一个支持web服务,并让其在Sitecore上下文中运行。

票数 1
EN

Stack Overflow用户

发布于 2010-07-14 01:32:48

有一种更简单的方法来实现你的目标:

  1. 创建桌面应用程序,并引用web应用程序与桌面应用程序相同版本的Sitecore二进制文件,以指向与您的网站相同的Sitecore数据库。
  2. 使用安全禁用程序,然后按如下方式设置上下文: Sitecore.Context.SetActiveSite("website");

Sitecore可能会告诉您,您正在尝试做的事情不会成功。但相信我,这是可行的,我以前也在项目中使用过这种方法。

其他详细信息: Sitecore使用Master、Core和Web作为其数据存储。我建议的方法使用Sitecore API直接写入数据库。在使用此方法时,您需要注意缓存的影响。

干杯!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3234832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档