Whenever interacting with the API’s from the Oracle Compute service cloud the thing first thing that needs to be done is to authenticate yourself against the API. This is done by providing the required authentication details and in return you will receive a cookie. This cookie is used for the future API calls you will do until the cookie lifetime expiries.
The Oracle documentation shows an example as shown below:
A couple of things you have to keep in mind when looking at example; this will execute the curl command against the REST API endpoint URL for the US0 cloud datacenter and it expect to have a file named requestbody.json available with the “payload” data.
In the example the payload file has the following content:
The thing to keep in mind when constructing your own payload JSON is that the Compute- part in Compute-acme should remain the “Compute-“ part. Meaning, if your identity domain is “someiddomain” it should look like “Compute- someiddomain” and not “someiddomain”
When executing the curl command you will receive the response like shown below:
The rest of the response is not directly needed.
The Oracle documentation shows an example as shown below:
curl -i -X POST -H "Content-Type: application/oracle-compute-v3+json" -d "@requestbody.json" https://api-z999.compute.us0.oraclecloud.com/authenticate/
A couple of things you have to keep in mind when looking at example; this will execute the curl command against the REST API endpoint URL for the US0 cloud datacenter and it expect to have a file named requestbody.json available with the “payload” data.
In the example the payload file has the following content:
{ "password": "acme2passwrd123", "user": "/Compute-acme/jack.jones@example.com" }
The thing to keep in mind when constructing your own payload JSON is that the Compute- part in Compute-acme should remain the “Compute-“ part. Meaning, if your identity domain is “someiddomain” it should look like “Compute- someiddomain” and not “someiddomain”
When executing the curl command you will receive the response like shown below:
HTTP/1.1 204 No Content Date: Tue, 12 Apr 2016 15:34:52 GMT Server: nginx Content-Type: text/plain; charset=UTF-8 X-Oracle-Compute-Call-Id: 16041248df2d44217683a6a67f76a517a59df3 Expires: Tue, 12 Apr 2016 15:34:52 GMT Cache-Control: no-cache Vary: Accept Content-Length: 0 Set-Cookie: nimbula=eyJpZGVudGl0eSI6ICJ7XC...fSJ9; Path=/; Max-Age=1800 Content-Language: enThe part that you need, and the actual cookie data which need to be used in later API calls is actually only a subpart of the response received. The part you need is:
nimbula=eyJpZGVudGl0eSI6ICJ7XC...fSJ9; Path=/; Max-Age=1800
The rest of the response is not directly needed.
No comments:
Post a Comment