这似乎与我的上一个问题有关,那里有一个ghostscript bug,因此ImageMagick开发人员制定了一个安全策略来阻止PDF转换。通过调整策略文件,将权限从“none”(默认)更改为“read | write”,解决了这个问题。
当运行类似以下形式的命令时,我遇到了类似的问题:
但问题仍然存在。如果简单地注释或删除上述行,则会得到相同的结果。这在我的多台Arch机器上都可以重现。
有没有办法绕过这个安全策略默认值?这样做是否安全?
当运行类似以下形式的命令时,我遇到了类似的问题:
convert input.pdf output.jpg
现在使用ghostscript 9.27版本(2019-04-04)和imagemagick 7.0.8-56 Q16 x86_64版本(2019-07-21)(我认为这是每个软件的最新版本),我遇到了这个错误
convert: attempt to perform an operation not allowed by the security policy `gs' @ error/delegate.c/ExternalDelegateCommand/378.
convert: no images defined `output.jpg' @ error/convert.c/ConvertImageCommand/3273.
所以我通过sudo编辑/etc/ImageMagick-7/policy.xml
,使得在<policymap>
中唯一没有注释的行被更改为
<policy domain="delegate" rights="none" pattern="gs" />
to
<policy domain="coder" rights="read | write" pattern="PDF" />
<policy domain="delegate" rights="read | write" pattern="gs" />
但问题仍然存在。如果简单地注释或删除上述行,则会得到相同的结果。这在我的多台Arch机器上都可以重现。
有没有办法绕过这个安全策略默认值?这样做是否安全?