今天的文章继续由 SAP 成都研究院的云时代女王,Aviva 给大家分享关于 SAP Customer Data Cloud 的一些使用经验。
Aviva 之前的文章可以在本文末尾处获得。
下面是她的正文。
*
大家好,我是 Aviva。本人在 SAP 不负责 Gigya 的开发工作,只是出于个人兴趣,在业余时间阅读了 SAP 官网上 Gigya 的帮助文档后,就 Gigya 提供的网站登录接入功能做了一些非常简单的 Hello World 级别的例子,在此分享给大家。
2017 年 SAP 收购了以色列创业公司 Gigya, 现在 Gigya 又被称作 SAP Customer Data Cloud,是 SAP C/4HANA 的五朵云之一。所以下文在不同的上下文出现的 SAP Customer Data Cloud 和 Gigya,大家可以认为这两组词表达的是同一个意思。
文章分为两部分,第一部分,简单介绍 SAP Customer Data Cloud 的业务,第二部分用一个 demo 介绍如何在自己的网站中使用 SAP Customer Data Cloud 中的某些服务。
Customer Data Cloud 从功能上分为三大模块:
SAP Customer Identity
SAP Customer Consent
SAP Customer Profile
我们首先来简单了解一下这三大功能模块。
SAP Customer Identity
提供跨渠道和跨设备的用户身份识别,在 Web,移动设备和物联网设备上提供统一的注册,身份验证,登录等用户体验。
除此之外,SAP Customer Identity 还提供单点登录,无密码的身份验证,能够安全地识别来自任何接入端的在线访问者。通过抓取客户授权的身份数据,SAP Customer Identity 可以推动个性化、即时营销、销售和服务,同时尊重消费者隐私并满足数据保护法规。Gigya 在安全上做了很多工作,确保用户数据不被窃取和攻击。
SAP Customer Consent
提供了开箱即用的工作流程,帮助企业明确提出各项服务条款,隐私政策,营销沟通,以及其他需要用户授权的同意请求等等。
每次企业更新服务条款和隐私政策,SAP Customer Consent 会自动触发新的用户同意请求,并记录每次用户的同意选项和授权的时间。企业管理员可以访问用户整个使用周期内每一次授权的历史记录,从而有效地解决政府对隐私的监管和审计。
在企业的数字生态系统中,通过将用户的配置文件与企业的应用程序和服务同步,在每个渠道上强制执行用户的隐私许可,满足关键数据隐私要求。SAP Customer Consent 提供了跨平台和跨设备的用户隐私设置服务中心,使用户在整个使用产品的生命周期内,都能透明地管理自己的偏好设置,控制企业对自己的隐私数据的访问规则,从而帮助企业和客户建立透明可信任的关系。
SAP Customer Profile
通过抓取用户授权后的第一手数据,SAP Customer Profile 为用户建立丰富的用户档案,让企业的每个应用程序和服务都可以无缝的使用它们。
企业各种应用和服务的用户资料通过统一的平台对管理员开放,同时也能为营销人员提供各种用户数据的分析报告,以及为客户细分和个性化的营销方案提供数据支撑。
下面通过一个简单的 demo,向大家介绍如何将 SAP Customer Identity 集成到我们自己的 Web 应用中。
我开发了一个基于 nodejs 的 Web 应用。后台使用 nodejs + express 框架,前端使用 SAP UI5。
登陆 SAP Customer Data Cloud 的 RAAS(Registration-as-a-Service)平台。
首先在 RAAS 平台上创建 site 和应用。
本地开发和测试使用的 Site Domain 可以填成 localhost:
创建一个新的 Application:
创建了 Site 和 Application 之后,Site 会自动生成对应的 API Key:
Application 会产生 User Key 和 Secret。
其次,在 Web 应用的 index.html 中引入 Gigya Web SDK:
<script src=”https://cdns.gigya.com/js/gigya.js?apikey=YOUR-API-KEY-HERE”>
</script>
然后使用 SAP UI5 开发 Web 应用的登录页面 login.view.xml 和控制器 login.controller.js。
Gigya 提供了一个默认的用户登录注册页面,只需两行代码就可以在我们的 Web 应用里使用。这种便捷的使用方式体现了 RAAS 的含义。
在 xml 视图中嵌入一个 div 标签:
在控制器实现的初始化函数中加入:
gigya.accounts.showScreenSet({
screenSet: ‘Default-RegistrationLogin’,
containerID: me.byId(‘LoginGigya’).sId
});
Gigya 的登录和注册服务就加入我们自己的 Web 应用中去了。
除了使用默认的登录屏幕设置之外,我们当然可以直接在 Gigya 平台上定制登录页面和注册流程。
Gigya 提供了 UI Builder,在 UI Builder 里可以使用默认的控件,通过拖拽就可以生成不同的登录页面(类似 SAP Cloud for Customer UI Designer),也可以直接修改 html 和 css,修改登录和注册流程等等。
Gigya 定义了许多不同类型的事件,这些事件由用户交互来触发,例如用户登录,按钮点击等。应用程序可以注册监听感兴趣的事件,并在收到这些事件时执行代码。
下面是简单的监听用户登录和注销事件的代码:
var me = this;
gigya.accounts.addEventHandlers({onLogin: me.login, onLogout: me.onLogout, context: me});
登录后,在控制台简单地打印一些字符串。
login: function (response) {
console.log(“LOGIN!!!!!!!!!!!!!!!!!”);
console.log(response);**
},
关于 Gigya 支持的所有事件和事件相关参数,可以参考用户手册:
https://developers.gigya.com/…
在 Web 应用后台,我们还可以使用 Rest API 的方式访问 Gigya 的相关服务。
举个例子,在后台获取用户的 Account 信息,调用 Rest API 需要用到 Site 的 API Key 和 Application 的 User Key 和 Secret。
以上只是基于 Gigya 提供的服务进行的一些最简单的练习。关于 Gigya 更多的功能介绍,请移步官网上去查看,有很详细的介绍:
https://developers.gigya.com/
感谢阅读。
Aviva 另外两篇文章:
Hyperledger Fabric on SAP Cloud Platform
SAP C/4HANA 与人工智能和增强现实 (AR) 技术结合的又一个创新案例
要获取更多 Jerry 的原创文章,请关注公众号 ” 汪子熙 ”: