SharePoint列表的人员类型字段LookUpId取值来源说明

SharePoint列表字段可以为字符串,数字,布尔,人员或组等类型。

当字段为人员或组且需要通过Graph Api来修改这个字段的值时,发现这个字段的LookUpId为int型,但AAD用户的Id为guid。完全对不上。

后面找了一篇文章,发现这个LookUpId的取值来自sharepoint的一个隐藏用户列表。
https://stackoverflow.com/questions/61143146/how-to-get-user-from-user-field-lookupid

可以通过获取普通SharePoint list数据的方式来获取这个列表的数据,然后可以使用这个隐藏用户列表的id来对应LookUpId了。

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: golang 的 `chown` 函数可以使用用户名或用户ID来更改文件所有权。你可以在调用 `chown` 函数时传入用户名或用户ID,而不是UID和GID。 例如: ```go err := os.Chown("/path/to/file", 1000, 1000) if err != nil { // handle error } ``` 或者: ```go err := os.Chown("/path/to/file", "alice", "users") if err != nil { // handle error } ``` 在第一个例子中,我们使用了用户ID和组ID来更改文件所有权。在第二个例子中,我们使用了用户名和组名来更改文件所有权。 希望这个答案能帮到你。 ### 回答2: 在golang中,可以使用`os.Chown`函数来改变文件的所有者和所属的组。然而,该函数需要传入文件的路径以及新的所有者和组的标识符(uid和gid)作为参数。 如果要无需使用uid和gid更改文件的所有者和组,可以使用`os.Lchown`函数来实现。该函数与`os.Chown`相似,但它使用文件的路径以及新所有者和组的名称作为参数,而不是标识符。 ```go import ( "os" ) func main() { filePath := "/path/to/file" ownerName := "newOwner" groupName := "newGroup" err := os.Lchown(filePath, -1, -1) // -1表示未更改uid和gid if err == nil { // 成功更改文件的所有者和组 } else { // 处理错误 } } ``` 以上代码片段演示了如何使用`os.Lchown`函数来更改文件的所有者和组,而无需使用uid和gid。通过将uid和gid参数设置为-1,函数会忽略这些参数并根据给定的所有者和组名称来更改文件的所有者和组。 请注意,使用文件的名称而不是标识符来更改文件的所有者和组可能不够安全,因为名称可能会发生变化或存在重复。因此,在实际应用中,建议使用uid和gid来确保更改的准确性和一致性。 ### 回答3: 在 Golang 中,我们可以使用 os/user 包中的 Lookup 方法来获取指定用户名的 UID 和 GID。然后,我们可以使用 os/chown 包中的 Chown 方法来更改文件的所有者。然而,如果不想使用 UID 和 GID,可以使用 os/user 包中的 LookupId 方法来直接获取 UID 和 GID。 示例代码如下: ```go package main import ( "fmt" "os" "os/user" ) func main() { // 获取当前用户的 UID 和 GID currUser, err := user.Current() if err != nil { fmt.Println("获取当前用户信息失败:", err) return } // 设置需要更改所有者的文件路径 filePath := "/path/to/file" // 更改文件的所有者为当前用户 err = os.Chown(filePath, currUser.Uid, currUser.Gid) if err != nil { fmt.Println("更改文件的所有者失败:", err) return } fmt.Println("文件所有者更改成功!") } ``` 需要注意的是,此示例代码会使用当前用户的 UID 和 GID 来更改文件的所有者。如果要更改其他用户的所有者,可以通过 os/user 包中的 LookupId 方法获取指定用户名的 UID 和 GID,并将其传递给 os.Chown 方法。在使用这些方法时,我们需要确保程序以足够的权限运行,以便更改文件的所有者。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值