gpt4 book ai didi

"Expire"的 PowerShell 动词

转载 作者:行者123 更新时间:2023-12-02 23:28:45 27 4
gpt4 key购买 nike

我正在为服务器应用程序完成一组 cmdlet。应用程序的一部分包括安全主体管理和数据对象管理,以及两者的“到期”(定时和手动)。在到期日期之后,安全主体的登录和访问将被拒绝,并且可以选择阻止对该主体拥有的数据的访问(通过立即删除或通过将其标记为过期作为自动维护的一部分)。

从 Get-Verb 的输出中,我看不到 Expire 的明显同义词,这是此处执行的操作最自然的动词选择。安全主体的过期会使主体过期,也可能会使所有存储的数据过期,而数据对象的过期仅限于该对象。

Set- 已用于两种对象类型,并且在功能上有部分重叠(Expire- 强制过去的日期,并删除数据,而 Set- 将允许 future 或过去的日期但不删除数据) .

以这种方式,Expire 合并了两个操作(Set+Remove),出于数据安全的原因,我们不想强制分离这两个操作(这已经是可能的)。

出于这个原因,我也认为 Disable- 是不合适的,因为它暗示了与 Enable- 逆转的可能性。

我还认为 Remove- 本身是不合适的,因为作为操作的一部分,有一些数据记录专门没有删除。

Unpublish 似乎非常接近,至少对于数据而言,但似乎意图再次将 Unpublish 和 Publish 配对,在这种情况下,它是不可逆的。当应用于安全主体时,它也没有意义。

那么,如果您想使某物过期,您希望使用哪个(如果有的话)标准动词?

最佳答案

查看 approved verbs 的列表, 两个向我跳了出来:

Deny (dn): Refuses, objects, blocks, or opposes the state of a resource or process.

Revoke (rk): Specifies an action that does not allow access to a resource. This verb is paired with Grant.

如果没有配对操作,我不会太担心,因为某些内置 cmdlet 会发生这种情况。例如,Stop-Computer 没有配对的Start-Computer。有 Remove-Variable,但没有 Add-Variable(有 New-Variable)。我认为只有存在成对的命令时,命名一致才是重要的。

另一种选择可能是使用类似 Set-ObjectExpiration/Get-ObjectExpiration 的方法,尤其是在查询对象何时过期有意义的情况下。

关于 "Expire"的 PowerShell 动词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24422019/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com