/cls-iframe-demo

CLS iframe demo. https://cloud.tencent.com/document/product/614/45742

Primary LanguageJavaScriptApache License 2.0Apache-2.0

CLS 免登陆跳转控制台

内嵌日志服务控制台

本项目为 内嵌日志服务控制台 的开箱即用演示样例,核心逻辑代码请参考 utils/roleAccess.js 文件。
用户可将代码逻辑拷贝到自己的项目中,为免登陆用户提供链接生成服务。

注意:
该 demo 中不包含鉴权外部系统鉴权逻辑,部署后所有访问者(即使未登陆腾讯云)均可以 demo 中配置的角色权限查看账户中的数据。
为保障数据隐私,请自行添加外部系统鉴权逻辑或限制其仅在内网中可访问,以确保有权限的用户才能够查看该页面。

配置

在项目根目录创建 .env 文件,填入 password, SecretId, SecretKey, RoleArn。 或在 config/default.js 中直接进行值配置

参数 描述
password 跳转服务密码,输入后即可以配置的身份访问控制台
port 服务端口号,默认值为 3000
s_url 内嵌页面跳转地址
baseCloudApiEndpoint 云API访问主域名,默认 tencentcloudapi.com
SecretId [云 API 密钥]SecretId
SecretKey [云 API 密钥]SecretKey
RoleArn AssumeRole接口请求参数。
角色的资源描述,可在访问管理,点击角色名获取。
普通角色:
qcs::cam::uin/12345678:role/4611686018427397919、qcs::cam::uin/12345678:roleName/testRoleName
服务角色:
qcs::cam::uin/12345678:role/tencentcloudServiceRole/4611686018427397920、qcs::cam::uin/12345678:role/tencentcloudServiceRoleName/testServiceRoleName
RoleSessionName AssumeRole接口请求参数,默认为 cls-iframe。
临时会话名称,由用户自定义名称。
长度在 2 到 128 之间,可包含大小写字符,数字以及特殊字符:=,.@-。 正则为:[\w+=,.@-]*

运行

容器化运行方案

从源码构建最新镜像版本 docker build . --tag=cls_iframe_demo

运行容器 docker run --env-file ./.env -p 3000:3000 cls_iframe_demo

Nodejs 运行方案

  1. 安装 nodejs v14 以上版本

  2. 进入项目根目录,使用命令 npm i 安装依赖

  3. 运行 npm run start

  4. 查看命令行中打印的 Server running at http://xxxx url 地址,在浏览器中打开。


对于有权限自定义控制,控制台与自有页面结合等复杂诉求的客户,可使用 cls-console-sdk 方案 自定义开发以集成控制台展示能力

将腾讯云日志服务以内嵌方式集成到其他系统中,免登录实现一站式日志访问,方便快捷使用 CLS 日志服务(包含检索分析,仪表盘)