轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
cas-mock-server

soulwing/cas-mock-server

soulwing
自动构建

一个简单的CAS服务器模拟工具,用于测试依赖CAS的应用,无需真实认证,支持任何用户名等于密码的凭据进行成功认证。

1 次收藏下载次数: 0状态:自动构建维护者:soulwing仓库类型:镜像最近更新:2 年前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

中文简介
下载命令
镜像标签列表与下载命令
轩辕镜像,快一点,稳很多。
点击查看

cas-mock-server

这是一个简单的CAS服务器模拟工具,适用于测试依赖CAS的应用,无需执行任何真实认证。

使用模拟CAS进行认证

此模拟CAS服务器未配置用户,允许任何用户名等于密码的凭据。例如,输入用户名为"john"且密码为"john"将成功认证该用户。

使用Docker运行

Docker Hub配置为对该仓库的所有代码推送执行自动构建。镜像可在 https://hub.docker.com/r/soulwing/cas-mock-server 获取。

docker container run -dp 8080:8080 soulwing/cas-mock-server

构建镜像

提供了Dockerfile以便轻松运行模拟服务器。Docker镜像包含Tomcat 8服务器,并将模拟服务器部署在服务器根目录。构建时,只需使用Docker构建:

docker image build -t cas-mock-server .

运行容器

构建完成后,可使用以下命令启动Docker容器:

docker container run -dp 8080:8080 cas-mock-server

运行后,可访问 http://localhost:8080/cas/login?service=http://localhost 查看CAS协议的实际效果。显然,您需要连接真实服务,但这至少能显示其正常工作。

属性释放

大多数CAS 3.0提供者能够释放进一步描述已认证用户的属性。此模拟CAS服务器内置了几种属性数据提供者。

JSON属性提供者

最简单的属性提供者是JSON属性提供者。此提供者从URL读取JSON对象,该对象描述要为用户包含的属性。

以下是一个示例:

json
{
  "DEFAULT": {
    "attributes": {
      "affiliation": "EMPLOYEE",
      "groupMembership": "valid-user"
    }
  },
  "fletcher": {
    "inherit": "DEFAULT",
    "attributes": {
      "uid": 1,
      "displayName": "Jordan Fletcher",
      "groupMembership": [
          "admin",
          "power-user"
      ]
    }
  }
}

JSON对象包含对应于用户登录名的键,每个用户对象包含一个attributes对象,其键和值是要为用户释放的属性。为避免文件中的重复,您可以定义一个用户对象(此处为DEFAULT对象),其中包含要由其他用户继承的属性。用户的inherit属性指定要继承其属性的用户的登录名。

要使用JSON属性提供者,只需指定ATTRIBUTES_JSON_URL环境变量,作为指向要加载的JSON对象的URL。Java的HttpURLConnection支持的任何URL均受支持。

JDBC属性提供者

JDBC属性提供者使用JDBC从SQL数据库读取属性。该提供者假设可以使用用户的登录名作为查询参数,将用户的属性读取为查询结果行。此外,它支持为单个多值属性(例如组成员身份)读取值,作为使用用户登录名作为查询参数的单列值行。

您可以通过指定多个环境变量来配置JDBC属性提供者:

  • ATTRIBUTES_JDBC_URL - 数据库的完整JDBC URL
  • ATTRIBUTES_JDBC_DRIVER -(可选)JDBC驱动程序的全限定类名;主要用于Tomcat,因为Tomcat不会自动注册JDBC驱动程序
  • ATTRIBUTES_JDBC_USERNAME -(可选)数据库用户名
  • ATTRIBUTES_JDBC_PASSWORD -(可选)数据库密码
  • ATTRIBUTES_JDBC_USER_QUERY - SQL查询,使用单个参数占位符(?)返回属性,该占位符将使用用户的登录名填充
  • ATTRIBUTES_JDBC_USER_COLUMNS - 逗号分隔的属性名称列表,对应结果中的位置列
  • ATTRIBUTES_JDBC_GROUP_QUERY -(可选)SQL查询,使用单个参数占位符(?)返回单个多值属性(如组成员身份)的值,该占位符将使用用户的登录名填充
  • ATTRIBUTES_JDBC_GROUP_COLUMNS - 逗号分隔的属性名称列表,对应组查询结果中的位置列

重要提示: 要使用JDBC属性提供者,您还必须安排将JDBC驱动程序包含在模拟CAS服务器的类路径中。如果使用PostgreSQL或MySQL作为数据库,CAS服务器捆绑了这些驱动程序的较新版本。如果需要其他驱动程序,并且使用基于Tomcat的模拟CAS服务器容器镜像,您可以创建基于模拟CAS服务器镜像的自定义容器镜像,将JDBC驱动程序复制到Tomcat的lib/目录中。

例如,假设您的数据库有一个app_user表,用于描述每个用户:

postgresql
CREATE TABLE app_user (
  id BIGINT PRIMARY KEY, 
  name VARCHAR(255) UNIQUE NOT NULL, 
  display_name VARCHAR(255), 
  affiliation VARCHAR(255)
)

假设此表的列对应于CAS属性uid、loginName、displayName和affiliation。

使用上面的示例表,ATTRIBUTES_JDBC_USER_QUERY环境变量的查询可以编写如下:

sql
SELECT uid, name, display_name, affiliation
FROM docker.xuanyuan.run/app_user
WHERE name = ?

此示例的ATTRIBUTES_JDBC_USER_COLUMNS变量值为uid,loginName,displayName,affiliation。

假设您还想包含表示用户组成员身份的单个多值属性,并且组成员身份在两个表中表示。在此示例中,第一个表定义可用组:

sql
CREATE TABLE app_group (
  id BIGINT PRIMARY KEY, 
  name VARCHAR(255) UNIQUE NOT NULL
)

此表定义组成员:

sql
CREATE TABLE app_group_member (
  group_id BIGINT NOT NULL REFERENCES app_group (id), 
  user_id BIGINT NOT NULL REFERENCES app_user (id))

您可以通过将ATTRIBUTES_JDBC_GROUP_QUERY变量指定为以下查询来包含多值groupMembership属性:

sql
SELECT g.name FROM app_group g
INNER JOIN app_group_member gm ON gm.group_id = g.id
INNER JOIN app_user u ON gm.user_id = u.id 
WHERE u.name = ?

此外,将ATTRIBUTES_JDBC_GROUP_COLUMNS变量指定为groupMembership。

使用自定义属性提供者

如果内置属性提供者均不满足您的需求,您可以提供自己的属性提供者。属性提供者通过Java ServiceLoader机制定位。您可以通过编写实现AttributesServiceProvider接口的提供者类,并将其放入包含META-INF/services中服务提供者规范的JAR文件来创建自己的提供者。有关创建服务提供者的详细信息,请参见https://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html%E6%96%87%E6%A1%A3%E3%80%82

创建提供者后,必须安排使其在模拟CAS服务器的类路径上可用。假设您使用在Tomcat上运行的模拟CAS服务器变体,您可以通过创建基于cas-mock-server镜像的自定义容器镜像,并将提供者的JAR文件复制到Tomcat的lib/目录中来实现。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 cas-mock-server 镜像标签

docker pull docker.xuanyuan.run/soulwing/cas-mock-server:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull soulwing/cas-mock-server:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Apple Container

macOS 原生容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

Unraid

Unraid NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

一键安装

一键安装 Docker

Linux Docker 一键安装

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
soulwing/cas-mock-server
教程轩辕镜像功能与使用教程
定价查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
商务合作:点击复制邮箱
用户协议·隐私政策·©2024-2026 源码跳动
用户协议·隐私政策©2024-2026 杭州源码跳动科技有限公司商务合作:点击复制邮箱

更多 cas-mock-server 镜像推荐

adobe/s3mock logo

adobe/s3mock

adobe
Amazon S3 API的模拟实现,用于开发测试环境中模拟S3服务功能
21 次收藏1000万+ 次下载
8 天前更新
linuxserver/code-server logo

linuxserver/code-server

LinuxServer.io 社区镜像
linuxserver/code-server是VS Code服务器版Docker镜像,可在浏览器中运行完整VS Code开发环境,无需本地安装即可跨设备访问。支持全部VS Code扩展、代码同步与终端功能,适配远程开发、团队协作或低配置设备场景。镜像经linuxserver优化,兼容ARM/AMD架构,内置持久化存储与安全配置,开箱即用,轻松打造云端IDE,提升开发灵活性与效率。
738 次收藏5000万+ 次下载
11 天前更新
stripe/stripe-mock logo

stripe/stripe-mock

stripe
stripe-mock是模拟Stripe API的HTTP服务器,可替代Stripe测试模式,使集成Stripe的测试套件更快、更稳定,该镜像替代stripemock/stripe-mock,旧镜像不再更新。
7 次收藏1000万+ 次下载
1 个月前更新
linuxserver/openssh-server logo

linuxserver/openssh-server

LinuxServer.io 社区镜像
提供OpenSSH服务器服务,支持远程登录与服务器管理,具备易于部署、配置灵活的特点,适用于各类需要安全远程访问的场景。
146 次收藏1000万+ 次下载
8 天前更新
mailserver/docker-mailserver logo

mailserver/docker-mailserver

mailserver
一个全栈且简单易用的邮件服务器,支持SMTP、IMAP协议,集成LDAP、反垃圾邮件及反病毒等功能。
263 次收藏1000万+ 次下载
10 天前更新
cilium/json-mock logo

cilium/json-mock

cilium
此仓库已弃用,请使用quay.io/cilium/json-mock替代
2 次收藏500万+ 次下载
2 年前更新

查看更多 cas-mock-server 相关镜像