专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

telefonicaiot/fiware-keystone-spassword Docker 镜像 - 轩辕镜像 | Docker 镜像高效稳定拉取服务

热门搜索:openclaw🔥nginx🔥redis🔥mysqlopenjdkcursorweb2apimemgraphzabbixetcdubuntucorednsjdk
fiware-keystone-spassword
telefonicaiot/fiware-keystone-spassword
自动构建
telefonicaiot
带有spassword和scim插件的Keystone身份管理,提供增强密码安全检查,如强密码强制、密码过期、登录失败锁定、密码恢复及双因素认证等功能。
2 次收藏下载次数: 0状态:自动构建维护者:telefonicaiot仓库类型:镜像最近更新:1 个月前
轩辕镜像,快一点,稳很多。点击查看
中文简介版本下载
轩辕镜像,快一点,稳很多。点击查看

Keystone SPASSWORD 扩展

![FIWARE 安全]([] ![许可证:Apache 2.0]([]
![Quay 徽章]([] ![Docker 徽章]([]
!状态

Keystone SPASSWORD 是 OpenStack Keystone 的扩展,提供额外的用户密码安全检查功能,包括强制使用强密码、设置密码过期时间、登录尝试失败次数限制(达到阈值后账户临时锁定)、密码恢复流程、双因素认证(2FA)等。

基于 Keystone 的版本

  • 1.4.X 使用 Keystone Liberty
  • 1.5.X 使用 Keystone Mitaka
  • 1.6.0 使用 Keystone Newton
  • 1.7.0 使用 Keystone Pike
  • 1.8.0 使用 Keystone Queens
  • 1.9.0 使用 Keystone Rocky
  • 1.10.0 至 1.17.0 使用 Keystone Stein
  • 1.18.x 使用 Keystone Xena
  • 1.19.x 至 1.24.0 使用 Keystone Antelope

安装与配置

在 RDO OpenStack 上通过 RPM 安装

通过 RPM 安装非常简单:

sh
rpm -Uvh keystone-spassword-*.noarch.rpm

安装后可微调配置选项(默认配置位于 /etc/keystone/keystone.conf):

[spassword]
enabled = true
pwd_exp_days = 365
pwd_max_tries = 5
pwd_block_minutes = 30
pwd_user_blacklist = user_id_list
smtp_server = '0.0.0.0'
smtp_port = 587
smtp_tls = true
smtp_user = '***'
smtp_password = 'yourpassword'
smtp_from = 'smtpuser'
  • enabled:布尔值,启用(true)或禁用(false)Keystone SPASSWORD 插件功能。
  • pwd_exp_days:密码过期时间(天),若用户未在此期限前更改密码则密码过期。
  • pwd_max_tries:登录尝试失败的最大次数,超过后账户将被锁定。
  • pwd_block_minutes:账户锁定时间(分钟)。
  • pwd_user_blacklist:以逗号分隔的用户 ID 列表,这些用户不受 SPASSWORD 限制。

keystone-spassword 启用了两个新的认证和身份插件,扩展了默认插件以确保强密码使用、检查过期时间及控制登录失败尝试次数。此外,它扩展了 Keystone 通过 "POST /v3/auth/tokens" 返回给用户的令牌数据,在令牌的 'extra' 字典中包含新字段:

json
"extras": {
    "password_creation_time": "2016-12-01T08:55:34Z",
    "pwd_user_in_blacklist": false,
    "password_expiration_time": "2017-12-01T08:55:34Z",
    "last_login_attempt_time": "2017-05-01T06:45:00Z"
}

需在配置中设置认证和身份插件:

[auth]
password=keystone_spassword.contrib.spassword.SPassword

及

[identity]
driver=keystone_spassword.contrib.spassword.backends.sql.Identity

添加过滤器配置:

[filter:spassword_checker]
paste.filter_factory = keystone_spassword.contrib.spassword.routers:PasswordExtension.factory

[filter:spassword_time]
paste.filter_factory = keystone_spassword.contrib.spassword:PasswordMiddleware.factory

重启 Keystone 服务:

sh
sudo service openstack-keystone restart
TGZ 安装

将插件的 TGZ 文件解压到 Python site-packages 目录,从 Keystone 的 contrib 目录创建软链接指向该目录。详细步骤参见 [RPM 规范步骤]./keystone-spassword.spec)。

安装 Keystone

完整的 Keystone 开发环境安装指南:

[***]

Docker 安装

提供包含 Keystone + keystone scim 插件 + keystone spassword 插件的 Docker 容器镜像: [***]

配置相关的[环境变量

从旧版本升级:

如何升级到最新(1.18.0)Docker 版本: 升级到 1.18.0 版本前,需先升级到 1.17.0 版本。根据起始版本,可能需要执行特定步骤。

常规升级流程:停止容器,更新 docker-compose 中的版本,重新启动容器;容器将被重建。但如果起始版本在 1.4.X 至 1.6.X 之间,则需执行额外步骤。无论如何,确保备份 MySQL Keystone 数据库:

sh
mysqldump -u root -p keystone > keystone_backup.sql

并在迁移的每个步骤中检查 Keystone 是否正常工作(如能否认证)。

另一种备份 Keystone 数据库的方法:

sh
echo "create database new_keystone" | mysql -u root -p
mysqldump -u root --password=<密码> keystone | mysql -u root -p new_keystone

从 1.4.X 升级

需先升级到 1.5.4 版本,再执行该版本的升级步骤。此步骤中,重要的是使用 Keystone 创建的 SQL 架构,而非仅从 SQL 转储备份恢复,因为 SQL 转储备份可能缺少 1.4.x 到 1.5.x 迁移所需的所有数据。更多信息见 [***]

从 1.5.X 或 1.6.0 升级

需执行以下操作:

在更新 docker-compose 中的镜像前,备份 keystone.spassword 表:

sh
mysqldump -u root -p keystone spassword > table_spassword.sql

执行以下命令:

sh
mysql -h iot-mysql -u root -p
use keystone;
drop table spassword;
delete from migrate_version where repository_id='keystone_spassword';

然后停止容器,更新 docker-compose 中的镜像版本并重启容器。检查 Keystone 正常工作后,可选择恢复 spassword 表:

sh
mysql -u root -p keystone < table_spassword.sql

再次重启 Keystone 容器。

从 1.7.0 或更高版本升级到 1.17.0

无需额外操作。

从 1.17.0 升级到 1.18.1

无需额外操作。

从 1.18.1 升级到 1.19.1

无需额外操作。升级到 1.19.1 版本前需先升级到 1.18.1 版本。

从 MySQL 迁移到 PostgreSQL

自 1.21.0 版本起,Keystone SPASSWORD 支持从 MySQL 迁移到 PostgreSQL。

前提条件

MySQL 8 的默认认证插件为 caching_sha2_password,不被迁移工具 pgloader 支持。需在 [mysqld] 部分添加:

default-authentication-plugin=mysql_native_password

重启 MySQL 服务器后执行:

ALTER USER 'youruser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourpassword';

迁移步骤

  1. 在 PostgreSQL 中创建新的 Keystone 数据库和用户:
sh
PGPASSWORD=postgresUser psql -h 172.17.0.1 -p 5432 -U postgresPass <<EOF
CREATE DATABASE keystoneDb;
CREATE USER keystoneUser WITH PASSWORD 'keystonePass';
GRANT ALL PRIVILEGES ON DATABASE keystoneDb TO keystoneUser;
ALTER DATABASE keystoneDb OWNER TO keystoneUser;
EOF
  1. 使用 pgloader(常见于 Debian 等 Linux 发行版)迁移数据:
sh
pgloader mysql://keystoneUser:keystonePass@172.17.0.1:3306/keystoneDb postgresql://keystoneUser:keystonePass@172.17.0.1:5432/keystoneDb
  1. 重启 Keystone Docker 容器:
sh
docker restart keystone

使用方法

SPASSWORD 扩展复用 Keystone 提供的认证和授权机制。本文档假设读者已具备 Keystone 使用经验,更多关于 Keystone 认证授权机制的信息参见官方文档。

此外,keystone-spassword 新增了处理双因素认证的 API,以及以下新 API:

  • 获取用户的所有项目角色(即授权):

GET '/v3/users/{user_id}/project_roles'

需使用与 <user_id> 用户关联的 x-auth-token。返回示例:

json
[
    {
        "domain": "8960989b51164eaeaa42200ecc79a47a",
        "project_name": "/smartcity/gardens",
        "project": "031149af6c5147a782e9cf4c56e1fe11",
        "role_name": "8960989b51164eaeaa42200ecc79a47a#SubServiceAdmin",
        "role": "e0da2d91e8154a32980ed4c5a717fd91",
        "user": "bace4fd6bd9b49fda5727eb83a714a3c",
        "user_name": "user1"
    },
    ....
]
  • 获取用户密码过期黑名单成员资格:

    GET '/v3/users/<user_id>/black'

    需使用与 <user_id> 用户关联的 x-auth-token。返回 JSON 指示用户是否在黑名单中({"black": true} 或 {"black": false}),并包含当前用户的密码过期时间(如 {"pwd_expiration_time": "2035-02-11T09:29:28.000000"})。

  • 修改用户密码过期黑名单成员资格(启用/禁用):

    POST '/v3/users/<user_id>/black'

    需使用与 <user_id> 用户关联的 x-auth-token。请求体为 {"enable":true}(启用)或 {"enable":false}(禁用)。

  • 初始化密码重置流程:

    GET '/v3/users/<user_id>/recover_password'

    无需与 <user_id> 用户关联的 x-auth-token。若用户有有效的已验证***,重置密码的链接将发送至该***。用户点击链接后,密码将重置并通过邮件发送给用户。

  • 完成密码重置流程:

    GET '/v3/users/<user_id>/reset_password/'

    [object Object]

[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
查看更多 fiware-keystone-spassword 相关镜像 →
opensourcemano/keystone logo
opensourcemano/keystone
opensourcemano
OpenStack Keystone身份认证服务的接口组件,用于实现服务间身份验证、授权管理及用户凭证交互。
2 次收藏50万+ 次下载
25 天前更新
starlingx/stx-keystone logo
starlingx/stx-keystone
starlingx
StarlingX是一个开源分布式云平台。更多信息请访问:https://www.starlingx.io/
5万+ 次下载
2 天前更新
starlingx/stx-keystone-api-proxy logo
starlingx/stx-keystone-api-proxy
starlingx
StarlingX是一个开源分布式云平台,主要用于构建分布式云环境。
5万+ 次下载
1 天前更新
fiware/orion logo
fiware/orion
fiware
支持NGSI-v2标准的上下文代理,用于物联网环境中上下文信息的存储、查询与管理,为应用提供实时上下文数据服务。
19 次收藏500万+ 次下载
1 个月前更新
fiware/orion-ld logo
fiware/orion-ld
fiware
基于NGSI-LD标准的上下文代理,用于物联网环境中上下文信息的收集、存储、查询与分发,支持标准化数据交互的核心组件。
1 次收藏100万+ 次下载
2 天前更新
fiware/iotagent-ul logo
fiware/iotagent-ul
fiware
Ultralight 2.0协议的IoT Agent,支持AMQP、HTTP和MQTT传输,作为Ultralight与上下文broker的NGSI接口之间的桥梁。
3 次收藏10万+ 次下载
1 年前更新

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

Docker 配置

登录仓库拉取

通过 Docker 登录认证访问私有仓库

专属域名拉取

无需登录使用专属域名

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

系统配置

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

MacOS OrbStack

MacOS OrbStack 容器配置

Docker Compose

Docker Compose 项目配置

NAS 设备

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

极空间

极空间 NAS 系统配置服务

网络设备

爱快路由

爱快 iKuai 路由系统配置

宝塔面板

在宝塔面板一键配置镜像

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

镜像拉取常见问题

使用与功能问题

docker search 报错:专属域名下仅支持 Docker Hub 查询

docker search 报错问题

网页搜不到镜像:Docker Hub 有但轩辕镜像搜索无结果

镜像搜索不到

离线传输镜像:无法直连时用 docker save/load 迁移

离线传输镜像

Docker 插件安装错误:application/vnd.docker.plugin.v1+json

Docker 插件安装错误

WSL 下 Docker 拉取慢:网络与挂载目录影响及优化

WSL 拉取镜像慢

轩辕镜像是否安全?镜像完整性校验(digest)说明

镜像安全性

如何用轩辕镜像拉取镜像?登录方式与专属域名配置

如何拉取镜像

错误码与失败问题

manifest unknown 错误:镜像不存在或标签错误

manifest unknown 错误

TLS/SSL 证书验证失败:Docker pull 时 HTTPS 证书错误

TLS 证书验证失败

DNS 解析超时:无法解析镜像仓库地址或连接超时

DNS 解析超时

410 Gone 错误:Docker 版本过低导致协议不兼容

410 错误:版本过低

402 Payment Required 错误:流量耗尽错误提示

402 错误:流量耗尽

401 UNAUTHORIZED 错误:身份认证失败或登录信息错误

身份认证失败错误

429 Too Many Requests 错误:请求频率超出专业版限制

429 限流错误

Docker login 凭证保存错误:Cannot autolaunch D-Bus(不影响登录)

凭证保存错误

账号 / 计费 / 权限

免费版与专业版区别:功能、限额与使用场景对比

免费版与专业版区别

支持的镜像仓库:Docker Hub、GCR、GHCR、K8s 等列表

轩辕镜像支持的镜像仓库

拉取失败是否扣流量?计费规则说明

拉取失败流量计费

KYSEC 权限不够:麒麟 V10/统信 UOS 下脚本执行被拦截

KYSEC 权限错误

如何申请开具发票?(增值税普票/专票)

开具发票

如何修改网站与仓库登录密码?

修改网站和仓库密码

配置与原理类

registry-mirrors 未生效:仍访问官方仓库或报错的原因

registry-mirrors 未生效

如何去掉镜像名称中的轩辕域名前缀?(docker tag)

去掉域名前缀

如何拉取指定架构镜像?(ARM64/AMD64 等多架构)

拉取指定架构镜像

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

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

轩辕镜像
镜像详情
...
telefonicaiot/fiware-keystone-spassword
博客公告Docker 镜像公告与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
镜像拉取问题咨询请 提交工单,官方技术交流群:1072982923。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
镜像拉取问题咨询请提交工单,官方技术交流群:。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.