2

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

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

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

以这种方式,Expire 结合了两个操作(设置+删除),出于数据安全的原因,我们不希望强制分离为两个操作(这已经是可能的)。

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

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

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

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

4

2 回答 2

2

看着批准的动词列表,有两个跳出来:

Deny (dn):拒绝、反对、阻止或反对资源或进程的状态。

Revoke (rk):指定不允许访问资源的操作。这个动词与格兰特配对。

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

另一种选择可能是使用Set-ObjectExpiration/之类的东西Get-ObjectExpiration,特别是如果想要查询对象何时到期是有意义的。

于 2014-06-26T04:08:46.230 回答
1

怎么样Invoke?它可能是Invoke-ExpireAppObject或类似的东西。

根据MS 推荐,确实没有适合您的场景的批准动词

于 2014-06-26T04:05:49.197 回答