Windows中的chmod og-rwx server.key

时间:2017-05-14 00:40:31

标签: windows postgresql ssl-certificate

我正在尝试为PostgreSQL创建证书。

this link上,最后一步是使用命令:

chmod og-rwx server.key

但是我有Windows 10.什么可能等同于该命令?

2 个答案:

答案 0 :(得分:1)

这可能有效,icacls server.key /grant Everyone:F

说明:那么,chmod所做的是更改文件权限。 root或具有chmod能力的用户可以允许或删除权限,例如 r eading a file, w riting to a file,或e x < / strong> ecuting文件。 因此声明 chmod og-rwx server.key 表示 o 允许不是此文件所有者的用户和 g ,用户是这部分文件的一部分&#39;分组到 rwx (或读取,写入和执行)。现在,告诉chmod我们正在做什么文件?的 server.key

接下来的问题是,我们如何在Windows 10中复制此命令和选项?根据microsoft的technet页面:icacls是要使用的命令。接下来,镜像chmod所描述的选项。所以我们授予每个人完全访问权限。

希望这有帮助(更重要的是有效!)

答案 1 :(得分:1)

正确答案:

在Windows 10中与chmod og-rwx server.key最接近的等效项是:

icacls server.key /reset
icacls server.key /inheritance:r /grant:r "CREATOR OWNER:F"

请注意,icacls命令在Windows Server 2003 SP2,Windows Vista和更高版本中也可用,但在Windows XP中不可用。

Linux命令:

PostgreSQL文档中提到的chmod og-rwx server.key命令正在使用symbolic mode of chmod

根据main page of chmod,符号模式的格式为[ugoa...][[-+=][perms...]...]

在上面的命令中,字母og 表示“ 更改文件所有者以外的所有其他用户和组的访问权限。”

-后的减号(og是运算符,表示“ 从文件中删除指定的权限”。

因此chmod og-rwx server.key有效地删除了所有者以外的所有用户对rwx文件的读取,写入和执行权限(server.key)。

Windows命令:

Windows命令icacls server.key /reset 删除文件仅保留继承的权限的显式设置的权限

命令icacls server.key /inheritance:r /grant:r "CREATOR OWNER:F"仅授予文件所有者完全控制权,并删除所有用户/组的继承权限

它可以通过以下方式实现:

  • /inheritance:r选项,删除从父目录继承的所有权限;
  • /grant:r "CREATOR OWNER:F"选项,该选项将所有者的显式权限替换为Full controlF代表Full control)。

可以在icacls命令的帮助下找到这些选项的更好说明:

PS> icacls /?
...
ICACLS name /reset [/T] [/C] [/L] [/Q]
    replaces ACLs with default inherited ACLs for all matching files.
...
/grant[:r] Sid:perm grants the specified user access rights. With :r,
    the permissions replace any previously granted explicit permissions.
    Without :r, the permissions are added to any previously granted
    explicit permissions.
...
/inheritance:e|d|r
    e - enables inheritance
    d - disables inheritance and copy the ACEs
    r - remove all inherited ACEs
...

提示

为了完整起见,您可以使用Windows GUI来实现相同的目的。

在Windows中对server.key文件的正确权限如下所示:

Proper permissions for a <code>server.key</code> file in Windows

在使用此命令之前,请确保文件的所有者设置为运行PostgreSQL服务器的服务帐户,否则该服务将无法读取该文件。