Security ckan:阻止用户自动注册

Security ckan:阻止用户自动注册,security,ckan,Security,Ckan,有没有办法在ckan中禁用用户自动注册 我想有一个ckan网站,将严格只读的访问者 具有供贡献者专用的后端 我查阅了文件,但找不到任何类似的选项 任何关于如何为此目的配置和保护ckan的建议都是受欢迎的最简单的解决方案是编写一个扩展来实现IAuthFunctions接口并覆盖user\u createauth函数 以下是基本扩展: def no_registering(context, data_dict): return {'success': False, 'msg': toolki

有没有办法在ckan中禁用用户自动注册

我想有一个ckan网站,将严格只读的访问者

具有供贡献者专用的后端

我查阅了文件,但找不到任何类似的选项


任何关于如何为此目的配置和保护ckan的建议都是受欢迎的

最简单的解决方案是编写一个扩展来实现
IAuthFunctions
接口并覆盖
user\u create
auth函数

以下是基本扩展:

def no_registering(context, data_dict):
    return {'success': False, 'msg': toolkit._('''You cannot register for this
        site.''')}

class NoSelfRegistration(plugins.SingletonPlugin):
    plugins.implements(plugins.IAuthFunctions, inherit=True)

    def get_auth_functions(self):
        return {
            'user_create': no_registering
        }

更新:我们目前正在实施一个配置选项来执行此操作(请求拉入)。

对于hub.HealthData.gov,我们创建了此修补程序

这将生成一个新的配置选项ckan.auth。创建我们设置为false的用户

从那时起,它一直处于拉请求炼狱中:


这现在是CKAN的标准功能(至少从2.3.2版开始,可能更早)。您可以使用


默认情况下,
ckan.auth.create\u user\u via\u api
为false,但
ckan.auth.create\u user\u via\u web
为true。

好提示,我会尝试一下。我想这一定是一个非常常见的情况,也许这个技巧可以添加到一些wiki页面…@opensas如果你满意这个答案,你能接受吗?当然,只是忘了它;-)谢谢,我希望它能很快被接受,这对我来说似乎是一个相当普遍的要求