!Consumer Data Right Logo
模拟数据持有者的源代码、文档和使用说明。此仓库提供了数据持有者的模拟实现,旨在帮助社区开发和测试其CDR解决方案。模拟数据持有者解决方案可配置为银行或能源行业使用。
模拟数据持有者:
模拟数据持有者使用授权服务器、模拟注册中心和模拟数据接收者。您可以将模拟数据持有者、模拟注册中心和模拟数据接收者解决方案中的任何一个替换为您自己的解决方案。
本项目中的工件有多种使用方式:
要开始,请克隆源代码。
git clone [***]
从1.2.0版本开始,模拟数据持有者现在使用授权服务器作为身份提供商。运行模拟数据持有者时,授权服务器也需要运行。可以使用以下命令克隆授权服务器仓库:
git clone [***] ./cdr-auth-server
有关设置行业配置文件、启动和调试解决方案的帮助,请参阅帮助指南。
如果您想向模拟数据持有者仓库贡献功能或修复,请查阅贡献指南。
Docker镜像在Docker Hub上提供,包括银行和能源模拟数据持有者。
注意:从1.2.0版本开始,身份服务器已替换为授权服务器。尽管授权服务器作为单独的仓库存在,但当为Docker构建mock-data-holder银行或能源镜像时,授权服务器会被复制到镜像中,替换Identity Server 4。
运行以下命令从Docker Hub拉取最新的银行模拟数据持有者镜像:
docker pull consumerdataright/mock-data-holder:latest
运行以下命令从Docker Hub拉取最新的能源模拟数据持有者镜像:
docker pull consumerdataright/mock-data-holder-energy:latest
有关将行业设置为银行或能源、将解决方案作为容器启动和调试以及替换您自己的解决方案的帮助,请参阅帮助指南。
可以通过访问以下地址查看模拟数据持有者的OpenID Connect发现文档:
银行模拟数据持有者 https://localhost:8001/.well-known/openid-configuration 能源模拟数据持有者 https://localhost:8101/.well-known/openid-configuration
模拟数据接收者已构建为测试工具,用于演示注册中心和模拟数据持有者之间的交互。模拟数据接收者可用于执行动态客户端注册、创建同意安排和探索模拟数据持有者API。提供的帮助指南将协助在Docker中设置模拟CDR生态系统。
有关证书如何用于模拟数据持有者的更多信息,请查阅证书管理文档。
当模拟数据持有者容器首次启动时,它将从CDR.DataHolder.Manage.API项目中包含的seed-data-{industry}.json文件加载数据。使用银行配置文件运行模拟数据持有者将从seed-data-banking.json文件加载数据;使用能源配置文件运行将从seed-data-energy.json文件加载数据。这些文件包含虚拟银行和能源数据(客户、账户、银行交易、能源优惠)以及可从注册中心获取的数据接收者元数据。当调用资源API时,将返回虚拟银行或能源数据。
有几种方法可以将您自己的数据加载到容器实例中:
seed-data.json文件/app/manage/Data文件夹中,复制seed-data-{industry}.json文件,重命名为您选择的名称,例如my-seed-data.json。/app/manage/appsettings.json文件以加载新的数据文件并覆盖现有数据:"SeedData": { "FilePath": "Data/my-seed-data.json", "OverwriteExistingData": true },
模拟数据持有者包含管理元数据API,允许将元数据重新加载到仓库中。
要使用元数据重新加载仓库,请向管理API发出以下请求:
注意:调用此API将删除所有现有元数据并重新加载提供的元数据
银行模拟数据持有者 POST https://localhost:8005/manage/metadata { <JSON元数据 - 与GET /manage/metadata响应或seed-data.json文件格式相同> }
能源模拟数据持有者 POST https://localhost:8105/manage/metadata { <JSON元数据 - 与GET /manage/metadata响应或seed-data.json文件格式相同> }
注意:目前管理API端点未应用任何身份验证/授权,因为这些被视为容器所有者可控。如果社区有相关反馈或提交拉取请求,可能会添加此功能。
docker compose文件可用于运行模拟CDR生态系统中的多个容器。
注意:docker compose文件使用Docker Hub上的Microsoft SQL Server镜像。使用docker compose文件必须接受Microsoft SQL Server镜像的Microsoft EULA。有关更多信息,请参见Docker Hub上的Microsoft SQL Server镜像。
有关将解决方案作为容器启动和调试以及替换您自己的解决方案的帮助,请参阅帮助指南。
根据消费者数据标准,数据持有者在消费者数据权利中运营需要以下核心功能:
模拟数据持有者与授权服务器结合,为银行和能源行业提供所有这些功能。下图显示了在集成开发环境中打开时的模拟数据持有者和授权服务器。
!模拟数据持有者组件
通过启动给定行业所需的项目并使用行业特定数据和端口,可以在银行和能源之间切换。下图显示了根据行业配置文件启动的项目,还说明了哪些数据持有者功能在行业间共享。
!模拟数据持有者银行配置文件 !模拟数据持有者能源配置文件
以下部分概述了模拟数据持有者的高层架构和组件:
!银行模拟数据持有者 - 架构
模拟数据持有者包含以下组件:
https://localhost:8000Get Status和Get Outages端口8000访问https://localhost:8001https://localhost:8002Get Accounts和Get Transactions端点托管于https://localhost:8003Get Customer端点托管于https://localhost:8006https://localhost:8005!能源模拟数据持有者 - 架构
模拟数据持有者包含以下组件:
https://localhost:8100Get Status和Get Outages端口8100访问https://localhost:8101https://localhost:8102Get Accounts和Get Concessions端点托管于https://localhost:8103Get Customer端点托管于https://localhost:8106https://localhost:8105构建模拟数据持有者使用了以下技术:
C#编写,基于.Net 8框架Ocelot实现SQL实例xUnit是用于编写和运行测试的框架Microsoft Playwright是用于Web测试的框架本解决方案包含自动化集成测试。有关更多信息,请参见测试自动化执行指南文档。
我们鼓励社区贡献。请参见我们的[贡献指南]([***]
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429