heimrichhannot/contao-privacy-bundle

此包包含与隐私和欧盟“通用数据保护条例”(GDPR)相关的功能。

安装: 307

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 5

分支: 0

开放问题: 0

类型:contao-bundle

1.5.0 2024-05-15 18:54 UTC

This package is auto-updated.

Last update: 2024-09-15 19:42:38 UTC


README

此包包含与隐私和欧盟“通用数据保护条例”(GDPR,在德语中为“Datenschutz-Grundverordnung”,DSGVO)相关的功能。

法律免责声明

自行承担使用此包的风险。虽然我们作为开发者尽力设计此包以满足法律要求,但我们无法保证其完整性和正确性。此外,我们不提供任何法律咨询服务。如果您有任何问题或疑虑,我们强烈建议您咨询律师。

功能

  • 隐私协议
    • 添加了新的Contao实体tl_privacy_protocol_archivetl_privacy_protocol_entry,用于存储隐私相关的操作,如同意...
    • 提供了一个简单的API,用于向隐私协议中添加新条目
    • 提供了创建新的隐私协议条目用于dca回调(oncreate_callbackonversion_callbackondelete_callback)的功能
  • 带有与隐私协议连接的前端同意/退出表单
  • 后端同意电子邮件模块,用于“邀请”用户同意隐私相关的协议

安装

  1. 简单使用composer安装:composer require heimrichhannot/contao-privacy-bundle
  2. 更新您的数据库并清除缓存。
  3. 现在您在Contao左侧菜单中有了新的“隐私”菜单项

导出隐私协议

可以将隐私协议条目导出为csvexcel。为了使用此功能,只需安装以下composer模块之一:

composer require heimrichhannot/contao-exporter-bundle

使用方法

隐私协议

  1. 添加新的协议归档,并选择您希望存储的字段(注意:切勿存储未经用户许可的个人数据!)。
  2. 选择以下功能以编程方式添加新条目,或创建条目后自动创建、更新或删除成员。

tl_member CRUD操作上创建条目

您可以激活以下tl_member回调的隐私协议条目自动创建

  • oncreate_callback
  • onversion_callback(这表示至少一个属性已实际更改的成员更新)
  • ondelete_callback

只需打开Contao的全局设置(tl_settings),在“隐私”部分中进行配置。

编程创建条目

在您可以将新条目添加到隐私协议之前,请创建隐私协议配置(转到后端的隐私协议并点击左上角的“配置”)。

从模块上下文添加新条目
// this represents your function for sending the opt in email
$success = $this->sendOptInEmail($firstname, $lastname, $email);

// only create a protocol entry if the email has indeed been sent
if ($success)
{
    System::getContainer()->get(\HeimrichHannot\PrivacyBundle\Manager\ProtocolManager::class)->addEntryFromModuleByConfig(
        // the id of the privacy protocol config
        1,
        // the data you want to add to the protocol entry to be created
        // CAUTION: Do NOT store personal data for which you don't have the user's permission!
        [
            'firstname' => $firstname,
            'lastname'  => $lastname,
            'email'     => $email
        ],
        // the contao module you're calling from
        $this,
        // optional: composer package name of the bundle your module lives in (version is retrieved automatically from composer.lock)
        'acme/contao-my-bundle'
    );
}
从内容元素上下文添加新条目

从模块上下文添加新条目相同。使用addEntryFromContentElementByConfig()代替。

从通用上下文添加新条目

从模块上下文添加新条目相同。使用addEntryByConfig()代替。

协议条目编辑器

模块ModuleProtocolEntryEditor可用于在隐私协议中创建条目。通常您有以下场景

进行双重确认以获得某些行动的协议(例如发送广告邮件)

在此场景中,您可以

  • 显示一个带有您指定的DCA字段表单(通常是 tl_member)-> 用户可以在此输入他的数据 (注意:只要求您在此请求确认的操作中必要的字段)
  • 此表单可以使用生成的准备好的URL进行预填充,该URL可以通过插入标签 privacy_opt_url 生成(见插入标签章节)
  • 您还可以通过在模块配置中不选择任何选项来避免显示任何字段
  • 在表单中点击“提交”后,用户通常会收到一封确认协议的电子邮件(使用contao通知中心),您只能在您所在国家合法的情况下跳过确认
  • 您可以指定在提交和确认后应生成哪些协议条目

进行单一取消确认以撤回对某些行动的协议(例如发送广告邮件)

您可以像执行单一操作一样执行此操作

后端取消确认表单

导航到左侧隐私部分的“取消确认”,向特定电子邮件地址发送取消确认电子邮件。该表单的工作方式如下

  1. 您在表单中输入的信息被转换为加密的JWT令牌,并附加到由插入标签 privacy_opt_url 创建的准备好的链接中(通知电子邮件)。
  2. 用户点击链接后,将被重定向到一个包含模块 ModuleProtocolEntryEditor 的页面。该模块识别JWT参数并使用它来预填充用户表单,以便他只需点击“提交”。
  • 提示:您在后台取消确认表单中输入的数据不会直接存储到您的数据库中。唯一的情况是作为加密的JWT令牌存储在contao通知中心的警报队列中。因此,请使用类似 heimrichhannot/contao-cleaner-bundle 的模块定期删除此令牌数据。*

插入标签