此项目是一个基于API的 Microsoft 365 管理平台, 支持订阅查询,用户管理(查询,新增,删除,分配许可证等),支持批量创建用户,批量删除用户,支持邀请码. 支持多账户管理.
后端基于SpringBoot,使用 msal4j 和 microsoft-graph sdk 开发完成
前端?嗯,能力不足,瞎写的,不要在意代码
-
总览:订阅数,许可证数,可用许可证数,用户数,允许登陆用户数,禁止登陆用户数等信息展示
-
许可查询:查询每个订阅的许可证信息
-
用户管理:查询,新增,删除,分配许可证等
-
多账户切换
-
新增登陆功能(需要在配置文件中配置账号和密码)
-
新增Docker启动方式
-
2020-11-23 增加发送账号密码到指定邮箱功能(需要修改配置文件)
-
2020-11-25 增加邀请码功能,用户可以自行注册账号
-
2021-05-27 用户管理界面改变包括:使用GridManager,并提供列表排序功能,增加用户提权功能(@Herts)。
注意:出现执行新增/删除账户,启用禁用账户,授权账户等操作后,查询结果不变,请右上角点击刷新缓存,或列表中搜索该用户
原因:调用微软API比较耗时,第一次查询时将需要的数据拉取到本地缓存(暂无自定义缓存失效功能,默认用户1天,域名1天,订阅30天)。
具体功能查看关于界面【操作教程】
新增用户:
权限类型 | 权限(从最低特权到最高特权) |
---|---|
委派(工作或学校帐户) | User.ReadWrite.All、Directory.ReadWrite.All、Directory.AccessAsUser.All |
委派(个人 Microsoft 帐户)) | 不支持。 |
应用程序 | User.ReadWrite.All、Directory.ReadWrite.All |
删除用户:
权限类型 | 权限(从最低特权到最高特权) |
---|---|
委派(工作或学校帐户) | Directory.AccessAsUser.All |
委派(个人 Microsoft 帐户)) | 不支持。 |
应用程序 | User.ReadWrite.All |
分配/取消许可证:
权限类型 | 权限(从最低特权到最高特权) |
---|---|
委派(工作或学校帐户) | User.ReadWrite.All、Directory.ReadWrite.All |
委派(个人 Microsoft 帐户)) | 不支持。 |
应用程序 | User.ReadWrite.All、Directory.ReadWrite.All |
提权:
权限类型 | 权限(从最低特权到最高特权) |
---|---|
委派(工作或学校帐户) | |
委派(个人 Microsoft 帐户)) | 不支持。 |
应用程序 | RoleManagement.ReadWrite.Directory |
请参考该文档 Config文档
下载最新版本的jar
包,然后在同目录新建config目录,下载 application-dev.yml文件放到该目录。
按照格式修改配置文件
执行 java -jar microsoft-0.0.1-SNAPSHOT.jar --spring.profile.active=dev
启动,端口:8099
然后下载 application-dev.yml文件放到config目录。
按照格式修改配置文件
docker pull logr/microsoft:latest
docker run -d --name=microsoft-admin \
-p 8099:8099 \
-v /home/microsoft/config:/config \
-v /home/microsoft/db:/root/.graph/db \
logr/microsoft:latest
- 登陆
- Microsoft 365 首页
- 首页展示
- 刷新缓存
- Microsoft 365 订阅管理
- 许可统计
- 许可证列表查询
- Microsoft 365 用户管理
- 查询用户统计
- 查询用户信息列表
- 查询用户信息详情
- 查询绑定域名
- 添加账号
- 删除账户
- 添加订阅
- 取消订阅
- 启用账户
- 禁用账户
- 批量创建用户信息
请自行设置 .evn {host} 和 {port}