Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import splunk.auth
- import splunk.rest
- import json
- import hashlib
- # Authenticate
- session_key = splunk.auth.getSessionKey(username='admin', password='changeme')
- # Read in the file
- with open('password.txt', 'r') as myfile:
- password_orig = myfile.read().replace('\n', '')
- m = hashlib.md5()
- m.update(password_orig)
- password_orig_hash = m.hexdigest()
- # Make up the args
- username = "Certificate"
- realm = "some_input"
- postargs = {
- 'realm': realm,
- 'name' : username,
- 'password' : password_orig
- }
- stanza = realm + ':' + username
- # Delete the existing entry if it exists
- server_response, server_content = splunk.rest.simpleRequest('/services/storage/passwords/' + stanza, sessionKey=session_key, method="DELETE")
- if server_response['status'] != '200':
- print server_content
- raise Exception("Server response indicates that the request failed: " + server_response['status'])
- # Save it
- server_response, server_content = splunk.rest.simpleRequest('/services/storage/passwords/', sessionKey=session_key, postargs=postargs)
- if server_response['status'] != '201':
- print server_content
- raise Exception("Server response indicates that the request failed: " + server_response['status'])
- # Load it
- server_response, server_content = splunk.rest.simpleRequest('/services/storage/passwords/' + stanza + '?output_mode=json', sessionKey=session_key)
- if server_response['status'] != '200':
- raise Exception("Server response indicates that the request failed: " + server_response['status'])
- password_content = json.loads(server_content)
- # Check out the result
- password_after = password_content['entry'][0]['content']['clear_password']
- m = hashlib.md5()
- m.update(password_after)
- password_after_hash = m.hexdigest()
- assert len(password_after) == len(password_orig)
- print "length of entry matches", len(password_after), len(password_orig)
- assert password_orig_hash == password_after_hash
- print "hash of entry matches", password_after_hash, password_orig_hash
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement