tridion - 获取当前登录用户的 session - 自定义页面

标签 tridion tridion-2011

我正在尝试开发一个自定义页面,其中,我正在尝试获取特定出版物中存在的所有组件的列表。

在aspx页面的页面加载中,我需要获取当前登录用户的 session 。

当我尝试使用代码时

    Session currSession = new Session();
    Response.Write(currSession.User.Id);

我收到以下错误。
Access is denied for the user NT AUTHORITY\NETWORK SERVICE

当我尝试使用代码时
Session currSession = new Session(WindowsIdentity.GetCurrent());
Response.Write(currSession.User.Id);

我收到以下错误。
The name 'WindowsIdentity' does not exist in the current context

1.) 在自定义页面中获取 session 的正确方法应该是什么?
我们可以使用 HttpContext.Current.Request.ServerVariables.Get("REMOTE_USER") 来获取用户。

2.) 自定义页面是否应该使用 CoreServices 或 TOM.NET API 从 CM 获取信息。哪个是首选。

最佳答案

您不能将 TOM.NET API 用于除模板和事件系统之外的进程。请为此使用核心服务 API(在那里您不需要 session )。

我可能会将其改写为:你 不应该将 TOM.NET API 用于除模板和事件系统之外的进程。从技术上讲这是可能的,但不应该那样使用,这就是核心服务的引入目的。

关于tridion - 获取当前登录用户的 session - 自定义页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11431760/

相关文章:

tridion - 在 <tridion :ComponentLink/> 中覆盖命名空间的最简单方法是什么

Tridion 2011 SP1 - 传输服务无法传输

tridion - 在 ListView 中从 Tridion Anguilla 获取 WebDavURL

Tridion 2011 Sp1 允许将组件的修订版本发布到暂存目标

tridion - 是否可以调用SiteEdit可编辑内容脚本使用RenderComponentPresentation方法从TBB输出内容?

Tridion 收藏夹 - 重命名收藏链接的能力

tridion - SDL Tridion 2011 中 MultiLineText 字段的 MaxLength 限制

tridion - 在模板中查找当前项目 ID 的最简单方法是什么

Tridion 用户界面 2012 - 401 未经授权

tridion - SDL Tridion 2011 UI - 加载时出现服务器错误