0

CKAN 可以用于用户仅在登录后才能访问数据集的网站吗?

我想到了一个使用 CKAN 运行的网站,例如www.statista.com,它只允许用户访问少数数据集。登录后授予完全访问权限(例如,为订阅付费的用户)。CKAN有可能吗?

如果可能,CKAN 是否有自己的身份验证系统,或者是否可以使用 FIWARE Key Rock GE 和 Access Control GE 进行管理?

4

2 回答 2

3

CKAN 有自己的身份验证系统,但我们开发了一个扩展,允许开发人员使用一些 IdM(包括 FIWARE)来验证用户。如果你想使用这个扩展,你可以在https://github.com/conwetlab/ckanext-oauth2查看安装说明

我们还开发了另一个扩展来管理可以查看特定数据集的用户。但是,我认为此扩展不适合您的目的,但您可以开发自己的扩展(如 Kapucko 所述)。这很容易,您必须按照http://docs.ckan.org/en/latest/extensions/tutorial.html上提供的说明进行操作。

在您的情况下,您将必须实现IAuthFunctions插件接口,覆盖该package_show函数并{ 'success': True }仅在用户登录时返回。我似乎记得这只发生在context.get('auth_user_obj') is not None.

您还可以使用组织并在其中创建所有数据集(将Visibility字段设置为Private)。不过,我不建议您使用这种方法,因为您必须手动插入新用户。

于 2015-01-13T22:26:59.793 回答
1

您可以为 CKAN 编写自定义扩展,您可以在其中定义自定义身份验证。一个好的起点是:https ://ckan.readthedocs.org/en/latest/maintaining/authorization.html

于 2014-12-18T16:14:08.107 回答