在没有API调用的情况下,CKAN中是否有函数可以进行登录操作



理想情况下,根据who.ini配置和代码,登录在CKAN中的工作方式是:

[plugin:friendlyform]
use = ckan.lib.repoze_plugins.friendly_form:FriendlyFormPlugin
login_form_url= /user/login
login_handler_path = /login_generic

这里login_handler_path负责登录,在CKAN的前端,它以name为用户名和password/login_generic端点发出POST请求。

现在我正在尝试创建一个插件,我试图通过插件本身登录(带有一些功能(,而不需要用户通过前端的任何形式登录。

那么,有没有任何助手/操作功能可以让我在CKAN插件本身的后台登录。

我所了解的是CKAN使用一些重映射cookie/API头来识别用户是否登录。如果我在python代码中使用正常的POST请求,那么我将无法设置这些cookie或环境变量,如果我尝试手动执行,那么我担心它会破坏一些东西。

非常感谢任何帮助

如果我正确理解您的问题,我认为您应该尝试使用IAuthFunctions来覆盖CKAN的内置身份验证。此接口允许将自定义身份验证方法集成到CKAN中。

最新更新