Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bastion Auto Fill

一个 Chrome Manifest V3 插件,用于简化堡垒机运维登录流程:

  1. 打开堡垒机 URL 后,插件先按 URL 规则匹配堡垒机配置。
    • 只有一个堡垒机用户:自动填入账号和密码。
    • 多个堡垒机用户:页面右上角弹出用户选择器,选择后填入。
  2. 进入该堡垒机内部的服务器登录页后,插件只在当前堡垒机的关联服务器列表中匹配服务器,并自动填入服务器账号和密码。

安全提示:当前实现将凭据保存在 chrome.storage.local。请只在可信设备使用,建议配合系统磁盘加密、浏览器企业策略或后续改造成与企业密钥/密码管理器集成。

安装方式

  1. 打开 Chrome:chrome://extensions/
  2. 开启右上角“开发者模式”
  3. 点击“加载已解压的扩展程序”
  4. 选择本项目目录

配置说明

点击浏览器右上角插件图标会打开独立配置页;也可以在扩展详情中点击“扩展程序选项”进入配置页。

堡垒机

  • 名称:便于识别,例如“生产堡垒机”。
  • URL 匹配:支持:
    • 通配符:https://bastion.example.com/*
    • 正则:/bastion\\.example\\.com/i
  • 堡垒机用户:可添加一个或多个堡垒机登录用户。
  • 关联服务器:在该堡垒机内部维护服务器账号。

关联服务器

服务器现在是堡垒机内部配置,不再是全局配置。

  • 名称:便于识别,例如 web-01
  • 服务器匹配:服务器 IP、主机名、资产名等,例如 10.0.1.23web-01
  • 登录账号/登录密码:进入服务器登录页面后自动填写。

匹配顺序:

  1. 当前页面 URL 先匹配某个堡垒机。
  2. 在服务器列表页点击某行或登录/连接按钮时,插件会优先记录这一行对应的服务器。
  3. 如果没有点击上下文,则只在整页唯一匹配到一台服务器时自动填充。
  4. 如果匹配到服务器,优先填入服务器账号密码。
  5. 如果没有匹配到服务器,再按堡垒机用户规则填入堡垒机账号密码。
  6. 每次自动填写后,页面右下角会显示提示,说明填写的是哪个堡垒机/服务器资产以及哪个用户。

可选行为

勾选“填写后自动点击登录按钮”后,插件会尝试点击登录/连接按钮。首次使用建议不要勾选,确认匹配规则正确后再启用。

导入/导出

配置页底部提供 JSON 导入/导出,便于备份和迁移配置。

如存在旧版本全局 servers 配置,插件会在打开配置页时自动迁移到第一个堡垒机下。

示例配置

{
  "enabled": true,
  "autoSubmit": false,
  "bastions": [
    {
      "name": "生产堡垒机",
      "urlPattern": "https://bastion.example.com/*",
      "users": [
        { "username": "zhangsan", "password": "bastion-password" }
      ],
      "servers": [
        {
          "name": "web-01",
          "hostPattern": "10.0.1.23",
          "username": "root",
          "password": "server-password"
        }
      ]
    }
  ]
}

适配策略

插件会根据输入框的 type/name/id/placeholder/label/aria-label 等信息寻找用户名和密码输入框,并使用原生 setter 触发 input/change 事件,以适配 React/Vue/Angular 等常见前端框架。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages