我使用的是露天默认网页脚本来获取用户的票证,但我不确定这张获得的票证是否有效。
此外,我提取的票证来自获得的露天默认登录网页脚本的XML响应。
机票是否有任何到期日或一旦获得机票,它将在会议到期之前到期?
答案 0 :(得分:8)
Alfresco存储库中设置的以下属性及其默认值将票证生命周期配置为一小时:
authentication.ticket.validDuration=P1H
您可以在usual way中覆盖此类属性。有意义的值在Duration类中描述:
* The lexical representation of duration is
* PnYnMnDTnHnMnS.
*
* P is a literal value that starts the expression
* nY is an integer number of years followed by the literal Y
* nM is an integer number of months followed by the literal M
* nD is an integer number of days followed by the literal D
* T is the literal that separates the date and time
* nH is an integer number of hours followed by a literal H
* nM is an integer number of minutes followed by a literal M
* nS is a decimal number of seconds followed by a literal S
请注意,默认情况下,成功使用故障单将更新其有效期,这意味着如果您在一个小时后59米处使用故障单进行身份验证,例如,如果您使用该故障单进行身份验证,则其有效期为延长到另一个小时。
由于票证生命周期是完全可配置的,请查看ticketComponent
中定义的authentication-services-context.xml
Spring bean以查看可用选项(例如,将oneOff
设置为true以仅允许一个使用给定的票证。)
答案 1 :(得分:5)
处理露天认证票据的最佳方法是手动处理。例如。要获得票证,请使用OOTB网络脚本。
http://localhost:8080/alfresco/service/api/login?u=admin&pw=admin
返回票证,例如TICKET_29ced6613a114294fa4bb9e67bf663112076f3d9
(需要提取)。
现在,当使用此票证进行任何类型的操作时,请尝试使用OOTB alfresco Web脚本验证票证有效性。请注意,这是基于HTTP GET
方法的Web脚本
GET /alfresco/service/api/login/ticket/{ticket}
http://localhost:8080/alfresco/service/api/login/ticket/TICKET_29ced6613a114294fa4bb9e67bf663112076f3d9?alf_ticket=TICKET_29ced6613a114294fa4bb9e67b663112076f3d9
这里需要注意的是,您需要通过附加?alf_ticket={ALFRESCO_TICKET}
来验证此Web脚本,否则它将无效。
最后,当您完成了所有工作后,请务必使用OOTB alfresco logout web脚本注销。请注意,这是基于HTTP DELETE
方法的Web脚本
DELETE /alfresco/service/api/login/ticket/{ticket}).
http://localhost:8080/alfresco/service/api/login/ticket/TICKET_29ced6613a114294fa4bb9e67bf663112076f3d9?alf_ticket=TICKET_29ced6613a114294fa4bb9e67bf663112076f3d9
您还需要通过附加?alf_ticket={ALFRESCO_TICKET}
来验证此网络脚本,否则它将无效。
通过这种方式,您可以确保正确的身份验证,并且系统不会因陈旧的故障单而负担过重。
P.S。 http://wiki.alfresco.com/wiki/Repository_RESTful_API_Reference#Logout