我遇到了SDK的问题。我跟着this guide来获得AWS的SSO。我可以使用我的代码添加4个角色,但之后我得到了413。
我的架构包含SSO角色阵列下的所有角色。因此,我制作的每个补丁都要求我根据the docs重新提交整个角色数组:
关于数组的注意事项:包含数组的修补程序请求会将现有数组替换为您提供的数组。您无法以零敲碎打的方式修改,添加或删除数组中的项目。
Python代码段
JSON
new_custom_schema是一个包含customSchema及其下所有节点的字典。
错误
service.users().patch(userKey=email, body=new_custom_schema).execute()
示例架构插入:
googleapiclient.errors.HttpError: <HttpError 413 when requesting https://www.googleapis.com/admin/directory/v1/users/user@domain.com?alt=json returned "Profile quota is exceeded.: Data is too large for">
示例用户补丁:
{
"fields":
[
{
"fieldName": "role",
"fieldType": "STRING",
"readAccessType": "ADMINS_AND_SELF",
"multiValued": true
}
],
"schemaName": "SSO"
}
在这个例子中,我能够提交前5个没有问题的
任何想法都将不胜感激。
答案 0 :(得分:0)
我向Google提交了一张支持票,发现自定义架构中的多值字段有4KB(~1000个字符)限制。
所以,有几个选择:
<强> [更新] 强>
您不能拥有多个具有相同实体ID的SAML应用。
[更新2]
新限制似乎大约是旧限制的两倍。介于2087 - 2315个字符之间
[更新3]
看起来此限制已显着增加。我还没有用完空间。
答案 1 :(得分:0)
我能够获得关于请求大小的答案:
array_length * 100 + SUM(value_lengths) <= ~32000
示例:
[ "{500 bytes}", "{500 bytes}", "{500 bytes}" ]
array_length is 3
SUM(value_lengths) is 1500
3 * 100 + 1500 + 4 = 1804