Forum Stats

  • 3,727,123 Users
  • 2,245,325 Discussions
  • 7,852,604 Comments

Discussions

oAuth2 security token - query connection

My company has created it's own java api to query a json file database. I have created a class to see if I can connect and query. That works, but it is not secure. It has my username and password in it.

A friend of mine created a python script to connect and query as well, however he is using oAuth2 with a token, and that works. I would like to use the oAuth2 token as well but in java.

Here is part of his code in python.


import requests

from requests import post, auth, exceptions

from json import loads   

import pandas as pd

import time

from io import StringIO


client_id = 'CSI10BIRSTDEM_DEM~OrYZOp7y7aL3-OX__vvOi4tmBKHbabfK3UiI5d-rOEY'

client_secret = 'gETIknwsuCfFqvsHTKLsA79NQzakR1_2UMdJ0b0TlEQnKb9KzI64ytrPikwFSUGMPvVtBNELmU4AO8GV2HiTBQ'

user = 'CSI10BIRSTDEM_DEM#vRzhxJEjwyK5m6LSGfa5UykRbbaVj1KHWan7j0qz61PrAwezkCks0t3nrnSarLvvk5bh25GTIDGVzHj55C139Q'

password = 'cUKHtWFnjNrXJV7xznezG36c2LaNBYTv1nb9WIIsi-dAQBUfjOBGznCxOUOMKiIvYPYmGfnkivd2HV2toAA5uQ'


access_point = 'https://qac-sso.qac.awsdev.infor.com/CSI10BIRSTDEM_DEM/as/token.oauth2'

grant_type = 'password'

headers = {'Content-Type': 'application/x-www-form-urlencoded'}

auth = auth.HTTPBasicAuth(client_id, client_secret)

data = {'grant_type': grant_type,

      'username': user,

      'password': password}

resp = None


try:

  resp = post(access_point, auth=auth, data=data, headers=headers, timeout=5)

except exceptions.ConnectionError:

  pass

  #print('Error')


if resp.status_code == 200:

  resp = loads(resp.text)

  if 'access_token' in resp:

    access_token = resp['access_token']

     

########################


url = 'https://qac-ionapi.qac.awsdev.infor.com/CSI10BIRSTDEM_DEM/IONSERVICES/datalakeapi/v1/compass/jobs'


query = "SELECT TOP 10 * FROM csi_pertot_mst"


response = requests.post(str(url),data = query.encode('utf-8'), headers={'Content-Type':'text/plain','Authorization': 'Bearer {}'.format(access_token)})


if response.status_code == 202:

  json_data = response.json()

Sign In or Register to comment.