- fix: gen_perms_apply_data拓扑资源按照资源类型聚合
- add: list_instance、search_instance 新增 ancestors 返回
- fix: gen_perms_apply_data拓扑资源需考虑system id
- IAMMigrator 将 bk_app_code/bk_app_secret 设置为类实例属性
- cachetools 依赖版本号调整为:cachetools>=3.1.1,<6.0
- add: list_instance、search_instance 新增 action 返回
- add: fetch_instance_list 支持 expression 表达式
- add: 支持权限中心后台v2鉴权api
- add: fetch_instance_list/fetch_resource_type_schema in ResourceProvider
- add: operator
string_contains
#68 - update: 规范化所有操作符左值/右值, 并增加校验(校验失败直接False)
- refactor: expression eval
注意: 如果使用 RBAC 接入权限中心, 必须使用这个版本的 SDK(action.auth_type="rbac")
- support django 3.2
- bugfix: 修复 iam sdk 拷贝到本地使用后执行 iam_makemigrations 报错的问题
- update: docs/usage.md
- add: ResourceProvider添加search_instance抽象方法
- bugfix: iam migration via apigateway should not use settings.BK_IAM_INNER_HOST
- bugfix: raise exception after replace esb api prefix
- contrib/iam_migration support calling api via APIGateway
- add: support calling apis via APIGateway
- bugfix: 修复当settings没有提供BK_IAM_SKIP变量导致migrate失败的问题
- bugfix: 修复当settings没有提供BK_IAM_SKIP变量导致migrate失败的问题
- add: iam.shortcuts.allow_or_raise_auth_failed 支持使用 cache 判断
- add: iam_migration 如果配置了BK_IAM_SKIP,则不进行migrate
- add: dummy iam 新增_do_policy_query_with_cache和is_allowed_with_cache实现
- bugfix: app_name error for django 3.2, improve verbose_name
- fix lint
- add: iam migration example.json
- add: raise http fail with detail
- bugfix: sql converter equals syntax error
- add: is_allowed_with_policy_cache for repeat calls of same subject-system-action policies
- add: do_migrate support feature_shield_rules
- add: do_migrate support common_actions
- bugfix: missing import os in do_migrate.py
- add: dummy_iam for mock and testing
- add: 添加属性新建关联函数
- bugfix: setup.py import version coding error while install
- bugfix: 修正 do_migrate 中 BK_IAM_HOST 的取值及默认值
- add: BKAPP_IAM_API_DEBUG/BKAPP_IAM_API_FORCE in environ for api debug
- add: search instance dispatcher
- add: another shortcut of tastypie
- bugfix: 修复通过 pip 安装方式使用时无法使用 iam_makemigrations 命令的问题
- bugfix: missing iam_migration/templates in dist package
- update: is_basic_auth_allowed log level to error if fail
- change: remove
six<1.15.0
, supportsix>=1.11.0
- bugfix: 生成无权限申请数据时支持根据 bk_iam_path 生成父实例信息
- add: 增加batch_resource_creator_action接口
- add: 新增 资源批量授权/回收 ,policy list 拉取系统下某个操作的策略列表(翻页) api的支持
- bugfix: setup.py read version fail
- update: six version >=1.11.0 and <=1.15.0
- change: 根据用户配置的API_PREFIX进行匹配返回对应的状态码
- add: is_allowed_with_cache for cache 10s for insensitive permission
- add: 授权回收接口grant_or_revoke_instance_permission/grant_or_revoke_path_permission
- add: do_migrate.py支持新建关联权限配置 upsert_resource_creator_actions
- add: iam 支持新建关联授权接口
- bugfix: 修复 IAM 调用 fetch_instance_info 接口失败的问题(需要更新
iam.resource.provider.ResourceProvider
子类中fetch_instance_info
的签名为def fetch_instance_info(self, filter, **options)
)
- add: do_migrate support upsert_action_groups
- bugfix: 修复 page obj slice_from 和 slice_to 生成逻辑不正确的问题
- remove: read README.md for long_description in setup.py
- remove: iam_resource_owner from docs
- bugfix: python2/3 super syntax error
- breaking changes: muti_actions func response action key change from
["action_id"]
to["action"]["id"]
- bugfix
- 增加 resource 模块, 提供 ResourceAPI Provider 及 Dispatcher
- bugfix
- add curl in debug log
- add iam logger
- update do_migrate.py
- 使用 poetry 管理项目
make_filter
支持传递外部 Converter
- 增加iam logger流水日志配置说明
- 优化iam logger info/error打印详情
- debug支持打印request_id
- debug支持打印curl, 方便自行调试
- debug模式下, 调用api会加入
?debug
, 返回结果中包含策略调试的上下文详细信息 - 支持Resource API Framework
- add: djaong migration支持
- contrib: tastypie
- add: 支持iam.meta配置元信息
- add: 支持批量资源鉴权
- add: 支持批量资源批量action是否有权限判断
- ops: 增加gitlab-ci, 支持lint / python2+python3 unittest
- fix: all lint issues
- unittest: 增加iam.IAM对象单元测试
- add: shortcut & exceptions
- 支持logging debug, 同时输出调用耗时
- 修复无权限返回空策略bug
- 增加转化为queryset的field字段映射转换
- 修复 ANY 表达式求值bug
- 增加支持打包
- 增加文档示例: 开启debug/鉴权/获取有权限的列表
- 支持表达式求值+表达式解析
- 基本代码框架+原型
- python版本的表达式求值的demo