Files
Python-Automation-Examples/Authentication/Zerto-Authentication-Python.py
T
2020-07-15 12:34:48 -04:00

42 lines
1.9 KiB
Python

# Legal Disclaimer:
#----------------------
#This script is an example script and is not supported under any Zerto support program or service.
#The author and Zerto further disclaim all implied warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose.
#In no event shall Zerto, its authors or anyone else involved in the creation, production or delivery of the scripts be liable for any damages whatsoever (including, without
#limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or the inability
#to use the sample scripts or documentation, even if the author or Zerto has been advised of the possibility of such damages. The entire risk arising out of the use or
#performance of the sample scripts and documentation remains with you.
#importing request, json
#importing HTTPBasicAuth library for ZVM basic authentication
import requests
import json
from requests.auth import HTTPBasicAuth
#Declaring Environment variables
zvm_ip = "zvmip"
zvm_u = "zvmuser"
zvm_p = "zvmpassword"
base_url = "https://"+zvm_ip+":9669/v1"
session = base_url+"/session/add"
###Functions####
def login(session_url, zvm_user, zvm_password):
print("Getting ZVM API token...")
auth_info = "{\r\n\t\"AuthenticationMethod\":1\r\n}"
headers = {
'Accept': 'application/json',
'Content-Type': 'application/json'
}
response = requests.post(session_url, headers=headers, data=auth_info, verify=False, auth=HTTPBasicAuth(zvm_user, zvm_password))
if response.ok:
auth_token = response.headers['x-zerto-session']
print("Api Token: " + auth_token)
return auth_token
else:
print("HTTP %i - %s, Message %s" % (response.status_code, response.reason, response.text))
returned_token = login(session, zvm_u, zvm_p)
print(returned_token)