通过 mail-gpg gem 对邮件附件进行加密
Mail's attachment encryption via mail-gpg gem
我必须加密电子邮件的附件。我通过 Mandrill 客户端 (mandrillapp.com) 发送电子邮件。
Gem 我用来加密附件的是邮件 gpg (https://github.com/jkraemer/mail-gpg)
控制台日志中没有错误。我收到了电子邮件,但 email/attachment 未加密。
你知道我的应用程序出了什么问题吗?
我的代码:
def self.mailing(atr1, atr2)
key = '-----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.12 (GNU/Linux)
mQGiBEk39msRBADw1ExmrLD1OUMdfvA7cnVVYTC7CyqfNvHUVuuBDhV7azs ....
-----END PGP PUBLIC KEY BLOCK----- '
mandrill = Mandrill::API.new 'YYYYYYYYYYYYYYYYYYYYYYYYYYY'
time = Time.now.strftime("%Y%m%d")
message = {
from_email: 'test@test.pl',
subject: "WWWWWWWWWWWWWW",
to: [{
email: App.settings.webservices[atr1]['email'],
type: "to"
},
{
email: App.settings.webservices[atr1]['email_bcc'],
type: "bcc"
}
],
attachments: [{
content: Base64.encode64(build_csv(atr2)),
name: "my_name" ,
type: 'text/csv',
gpg: { encrypt: true }# , keys: { App.settings.webservices['ggggg']['email'] => key} }
}],
# gpg: { encrypt: true, keys: { App.settings.webservices['ggggg']['email_bcc']} }
}
result = mandrill.messages.send message
result.first.with_indifferent_access
end
感谢您的帮助
Mail-gpg 扩展了 Mail gem,因此它可以发送 Pgp/Mime 加密邮件。
不支持仅加密附件。加密整个邮件 as documented 或在将附件附加到您的电子邮件之前手动加密附件(即使用 gpgme gem)。
因此,如果有的话,将散列的消息(顶层)级别的 gpg 选项传递给 Mandrill gem(前提是它以某种方式做正确的事情,我不知道)。如果失败,请自己构建 Mail::Message 并通过 Mandrill 的 Smtp 服务器发送。你不需要他们的gem。
我必须加密电子邮件的附件。我通过 Mandrill 客户端 (mandrillapp.com) 发送电子邮件。 Gem 我用来加密附件的是邮件 gpg (https://github.com/jkraemer/mail-gpg) 控制台日志中没有错误。我收到了电子邮件,但 email/attachment 未加密。 你知道我的应用程序出了什么问题吗? 我的代码:
def self.mailing(atr1, atr2)
key = '-----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.12 (GNU/Linux)
mQGiBEk39msRBADw1ExmrLD1OUMdfvA7cnVVYTC7CyqfNvHUVuuBDhV7azs ....
-----END PGP PUBLIC KEY BLOCK----- '
mandrill = Mandrill::API.new 'YYYYYYYYYYYYYYYYYYYYYYYYYYY'
time = Time.now.strftime("%Y%m%d")
message = {
from_email: 'test@test.pl',
subject: "WWWWWWWWWWWWWW",
to: [{
email: App.settings.webservices[atr1]['email'],
type: "to"
},
{
email: App.settings.webservices[atr1]['email_bcc'],
type: "bcc"
}
],
attachments: [{
content: Base64.encode64(build_csv(atr2)),
name: "my_name" ,
type: 'text/csv',
gpg: { encrypt: true }# , keys: { App.settings.webservices['ggggg']['email'] => key} }
}],
# gpg: { encrypt: true, keys: { App.settings.webservices['ggggg']['email_bcc']} }
}
result = mandrill.messages.send message
result.first.with_indifferent_access
end
感谢您的帮助
Mail-gpg 扩展了 Mail gem,因此它可以发送 Pgp/Mime 加密邮件。
不支持仅加密附件。加密整个邮件 as documented 或在将附件附加到您的电子邮件之前手动加密附件(即使用 gpgme gem)。
因此,如果有的话,将散列的消息(顶层)级别的 gpg 选项传递给 Mandrill gem(前提是它以某种方式做正确的事情,我不知道)。如果失败,请自己构建 Mail::Message 并通过 Mandrill 的 Smtp 服务器发送。你不需要他们的gem。