Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用rest api为gitlab用户设置标识_Python_Rest_Api_Python Requests_Gitlab - Fatal编程技术网

Python 使用rest api为gitlab用户设置标识

Python 使用rest api为gitlab用户设置标识,python,rest,api,python-requests,gitlab,Python,Rest,Api,Python Requests,Gitlab,我也在这里发布我的问题。也许任何人都有一个务实的方法来解决这个问题: 目前,我一直忙于在gitlab ce中自动创建用户,向用户添加现有ssh密钥,然后将用户的身份更改为不同的提供商,在我的例子中是atlassian crowd。我试图在创建用户时执行post请求时设置它,方法是将{'identies':[{'provider':'crowd','external\u uid':'foobar'}]}添加到我的请求中,但是当用户被正确创建时,标识设置被忽略。请求实际上类似于以下内容,是针对 正如

我也在这里发布我的问题。也许任何人都有一个务实的方法来解决这个问题:

目前,我一直忙于在gitlab ce中自动创建用户,向用户添加现有ssh密钥,然后将用户的身份更改为不同的提供商,在我的例子中是atlassian crowd。我试图在创建用户时执行post请求时设置它,方法是将
{'identies':[{'provider':'crowd','external\u uid':'foobar'}]}
添加到我的请求中,但是当用户被正确创建时,标识设置被忽略。请求实际上类似于以下内容,是针对

正如我所说,用户是被创建的,而不是身份。通过API直接设置标识,即在外部系统中设置某个标识以及id,似乎没有实现。这就是我在gitlab.com()上提交问题的原因

我现在正在寻找一种替代方法来解决这个问题。我正在进行不同技术的迁移,我想首先自动化用户管理。由于有两个,手动执行此操作是不可行的

事实上,可以在管理ui中设置用户的身份。单击“创建”按钮时,通过浏览器对其进行检查表明,这是针对的POST请求

内容是url编码的:

utf8:✓
authenticity_token:47yRB038sLQQ7bBP4vYGdVcQzg/8js09h5mUkz5vNYSALAjRqIpAFjYube8VxUlEKChNcrjNmx7s0RW8tDWFqC==
identity[provider]:crowd
identity[extern_uid]:fbar
如您所见,它不是API url,而是ui。我在这里不知道的是真实性标志。它不是管理员的私有访问令牌。它是会话令牌吗

从技术角度看,我正在使用python w/requests来完成这一切。

要实现这一点,需要gitlab ce的API提供支持

utf8:✓
authenticity_token:47yRB038sLQQ7bBP4vYGdVcQzg/8js09h5mUkz5vNYSALAjRqIpAFjYube8VxUlEKChNcrjNmx7s0RW8tDWFqC==
identity[provider]:crowd
identity[extern_uid]:fbar