给定预定义模式的跨域身份管理(SCIM)响应系统的验证器

scimschema的Python项目详细描述


scimschema-logo

scimschema

https://travis-ci.org/GordonSo/scimschema.svg?branch=master

根据SCIM(支持python 3+)中指定的预定义scim模式集(json表示格式),验证json内容。

示例用例

看看这个test_scim_schema.py

fromscimschemaimportvalidatefrom.importextension# A sample schema, like what we'd get from response.get(<scim entity url>).json()content={"schemas":["urn:ietf:params:scim:schemas:core2:2.0:Group","urn:huddle:params:scim:schemas:extension:2.0:SimpleAccount"],"id":"2819c223-7f76-453a-919d-413861904646","externalId":9,"meta":{"resourceType":"User","created":"2011-08-01T18:29:49.793Z","lastModified":"Invalid date","location":"https://example.com/v2/Users/2819c223...","version":"W\/\"f250dd84f0671c3\""}}validate(data=content,extension_schema_definitions=extension.schema)>>>E_scimschema._model.scim_exceptions.AggregatedScimMultValueAttributeValidationExceptions:Found1aggregatedexceptionsatScimresponse:>>>EScimAttributeValueNotFoundException:>>>E'Single-value attribute:ipRestrictionsEnabled'isrequiredatthefollowinglocation'['urn:huddle:params:scim:schemas:extension:2.0:Account', 'ipRestrictionsEnabled']'butfound'{}'>>>!!!!!!!!!!!!!!!!!!!Interrupted:1errorsduringcollection!!!!!!!!!!!!!!!!!!!

功能

支持SCIM 2.0
  • 验证SCIM架构定义
    • 验证模型(模式)ID、名称、描述、属性
    • 验证属性(模式)名称、类型、必需、规范值、可变性、返回、唯一性
  • 根据scim模式验证json内容
    • 根据类型(binary、boolean、datetime、decimal、integer、reference、string、complex、multivalued)验证有效值
    • 所需特征、规范值、唯一性

即将推出的功能

  • Validate JSON Content for characteristics below:
    • Mutability, Returned

运行测试套件

该项目需要pytest来发现测试,并且它与travis集成以在提交时运行。 如果您使用的是windows机器,在go.bat中有一些有用的命令可以帮助您开始…

贡献

该项目由位于Huddle的质量保证部门提供支持

源代码在GitHub上可用。

通过github或其他方式联系,也欢迎投稿人!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么需要ScheduledExecutorService。shutdown()使用我100%的CPU吗?   java如何加载应用程序。spring框架中的属性?   java立即绘制JFrame   java定时器不允许用户进行编辑   java如何通过在React应用程序中提交值来加载数据   java在Multimultiul maven项目中集成特性(文件)存储在哪里?   java Arjuna JTA事务意外回滚   java禁用edittext 安卓,在视图中使用if-else   java中的错误。图书馆从Matlab调用使用Cplex的Java函数时的路径   Java中的浮点计算错误   Java中C#IEnumerable的等价物是什么?是可协变的,不是可协变的   最终播放商店用户可见的java Apk名称