Guest User

Untitled

a guest
Mar 9th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. {
  2. "Statement": [
  3. {
  4. "Effect": "Allow",
  5. "Action": "*",
  6. "Resource": "*"
  7. }
  8. ]
  9. }
  10.  
  11. #!/usr/bin/env python
  12.  
  13. from __future__ import print_function
  14.  
  15. import base64
  16. import hashlib
  17. import hmac
  18. import json
  19. import struct
  20. import urllib2
  21.  
  22. METADATA_BASE = 'http://169.254.169.254/2012-01-12/meta-data'
  23.  
  24.  
  25. def main():
  26. access_key_id, secret_access_key = get_access_creds()
  27. username, password = get_smtp_creds(access_key_id, secret_access_key)
  28.  
  29. print('SMTP Username: %s' % username)
  30. print('SMTP Password: %s' % password)
  31.  
  32.  
  33. def get_access_creds():
  34. url_handle = urllib2.urlopen('%s/iam/security-credentials' %
  35. (METADATA_BASE,))
  36. role_name = url_handle.read()
  37. url_handle.close()
  38.  
  39. url_handle = urllib2.urlopen('%s/iam/security-credentials/%s' %
  40. (METADATA_BASE, role_name))
  41. sec_cred_doc = url_handle.read()
  42. url_handle.close()
  43.  
  44. sec_cred_data = json.loads(sec_cred_doc)
  45. access_key_id = buffer(sec_cred_data['AccessKeyId'])
  46. secret_access_key = buffer(sec_cred_data['SecretAccessKey'])
  47.  
  48. return access_key_id, secret_access_key
  49.  
  50.  
  51. def get_smtp_creds(access_key_id, secret_access_key):
  52. message = 'SendRawEmail'
  53. version = 0x02
  54.  
  55. sig= hmac.new(
  56. secret_access_key,
  57. msg=message,
  58. digestmod=hashlib.sha256)
  59. sig_bytes = sig.digest()
  60. sig_and_version_bytes = (struct.pack('B', version) + sig_bytes)
  61. smtp_password = base64.b64encode(sig_and_version_bytes)
  62.  
  63. return access_key_id, smtp_password
  64.  
  65. if __name__ == '__main__':
  66. main()
  67.  
  68. swaks -s email-smtp.us-east-1.amazonaws.com --from wt@example.com --to wt@example.com --auth-user <smtp username from script above> --auth-password <smtp password from script above> --tls
  69.  
  70. {
  71. "Version": "2012-10-17",
  72. "Statement": [
  73. {
  74. "Effect": "Allow",
  75. "Action": "ses:SendRawEmail",
  76. "Resource": "*"
  77. }
  78. ]
  79. }
  80.  
  81. {
  82. "Version": "2012-10-17",
  83. "Statement":[{
  84. "Effect": "Allow",
  85. "Action": ["ses:*"],
  86. "Resource":"*"
  87. }
  88. ]
  89. }
Add Comment
Please, Sign In to add comment