Create an application instance

post

/api/v1/applications

This API will create an application instance in Oracle CASB. There are two kinds of monitoring modes in which an instance can be created. One is the monitor only monitor-only mode and the other is push controls mode specified mode, specified as 'monitoronly' and 'monitorandpush' respectively. If the security control type is set to stringent or standard, then anything passed in the security control parameters body will be ignored, as those values are pre-determined by AWS

Request

Supported Media Types
Header Parameters
Body ()
There are three modes of security Controls: stringent, standard and custom. You can authenticate using basic authentication. In addition if you have cross-account details to be provided, then you could provide the related additional parameters (externalId & roleArn). You must specify an instance name that has not been used before.
Root Schema : ApplicationCreateRequest
Type: object
Body of the create request will have primarily the security controls and credentials needed to create the instance. The credentials will be used to reach the cloud application provider, and to create an instance in there. The security controls are knobs which define the security posture of the instance. The instance name and application name also must be specified.
Show Source
  • Allowed Values: [ "AWS" ]
    Application name. Only AWS is currently supported.
  • ApplicationCredentials
    Body for creating credentials for AWS. The fields in the Application Credentials are needed for successfully reaching AWS and creating instance.
  • Name of the application instance.
  • Allowed Values: [ "MONITORONLY", "MONITORANDPUSH" ]
    Allowable values are MONITORONLY or MONITORANDPUSH. The monitor only monitor-only mode allows for monitoring of the instance. Monitor and push will allow deeper checks allows updating of security control values.
  • SecurityControls
    This body represents the security controls passed to AWS. The Security Control Type is either Stringent, Standard, or Custom.
Nested Schema : ApplicationCredentials
Type: object
Body for creating credentials for AWS. The fields in the Application Credentials are needed for successfully reaching AWS and creating instance.
Show Source
  • AWS specifies an access key and secret key pair to create an instance. The first part of pair is the access key.
  • Can be left blank, if the mode is basic. Only needed in case of cross-account.
  • Can be left blank, if the mode is basic. Only needed in case of cross-account.
  • Can be either BASIC or CROSSACCOUNT. If it's cross-account, then role ARN, and external ID are mandatory parameters.
  • Can be left blank, if the mode is basic. Only needed in case of cross-account.
  • Can be left blank, if the mode is basic. Only needed in case of cross-account.
  • AWS specifies an access key and secret key pair to create an instance. The second part of pair is the secret key.
  • Can be left blank, if the mode is basic. Only needed in case of cross-account.
  • ssoproperties
    Can be left blank, if the mode is basic. Only needed in case of cross-account.
Nested Schema : SecurityControls
Type: object
This body represents the security controls passed to AWS. The Security Control Type is either Stringent, Standard, or Custom.
Show Source
Nested Schema : ssoproperties
Type: array
Can be left blank, if the mode is basic. Only needed in case of cross-account.
Show Source
Nested Schema : Ssoproperties
Type: object
Show Source
Nested Schema : SecurityControlParameters
Type: object
These are the controls which AWS provides to define the security posture of an instance. See individual properties for details on each.
Show Source
Back to Top

Response

Supported Media Types

201 Response

Successfully created an application instance in Oracle CASB Cloud Service.
Body ()
Root Schema : ApplicationCreateResponse
Type: object
The response body after creating an application successfully. The response will contain information about the instance created, which could be used later on to query for the instance.
Show Source

400 Response

Bad request format for a create. Check the response for more information on which fields are inaccurate. Ensure that you have a request which follows the format.
Body ()
Root Schema : Error
Type: object
Show Source

401 Response

Unauthorized Create call. See response for more details.
Body ()
Root Schema : Error
Type: object
Show Source

403 Response

Create Request is forbidden. It is likely the CASB APIs aren???t enabled for the tenant.
Body ()
Root Schema : Error
Type: object
Show Source

404 Response

Resource requested during create was not found.
Body ()
Root Schema : Error
Type: object
Show Source

500 Response

Internal Server error occurred during create. See response for more details.
Body ()
Root Schema : Error
Type: object
Show Source
Back to Top

Examples

The following examples show how to create an AWS application instance by submitting a POST request.

Example 1 Request Body: Creating an AWS Application in Monitor-Only Mode

{
  "applicationName": "AWS",
  "instanceName": "monitor_custom_basic",
  "monitoringType": "MONITORONLY",
  "securityControls": {
    "securityControlType": "custom",
    "securityControlParameters": {
      "minimumPasswordLength": 10,
      "requireUppercaseCharacters": false,
      "requireLowercaseCharacters": false,
      "requireNumbers": false,
      "requireSymbols": false,
      "allowUsersToChangePassword": false,
      "maxPasswordAge": 45,
      "passwordReusePrevention": 5,
      "hardExpiry": false,
      "mfaChecker": false,
      "s3ServerSideEncryptChecker": false,
      "s3IsMfaEnableForDeleteBucketChecker": false,
      "ec2SecurityGroupChecker": false,
      "ec2NAclPortsChecker": false,
      "ec2NAclAllowAllChecker": false,
      "r53NoHostedZones": false,
      "r53NoHealthChecks": false,
      "ebsNonEncryptedVolumes": false,
      "rdsNonEncryptedDbs": false
    }
  },
  "credentials": {
    "accessKey": "ABCDEFGHIJ1234567890",
    "secretKey": "ABCDEFGHijklmnopQRDTUVWxyz0123456789abcdef",
    "roleName": "",
    "roleArn": "",
    "mode": "BASIC",
    "serviceinstancename": "",
    "externalId": "",
    "accountId": "",
    "ssoproperties": {}
  }
}

Example 1 Response Body: Creating an AWS Application in Monitor-Only Mode

The following example shows the contents of the response body in JSON format:

{
  "applicationName": "AWS",
  "instanceId": "12345678-9101-abcd-efgh-ijklmnopqrst",
  "instanceName": "monitor_custom_basic",
  "tenantId": "abcdefgh-1234-ijkl-5678-mnopqrstuvwx",
  "message": "Successfully created application"
}

Example 2 Request Body: Creating an AWS Application in Monitor and Push Mode with Custom Security Controls

{
  "applicationName": "AWS",
  "instanceName": "monitor_seed_custom_basic",
  "monitoringType": "MONITORANDPUSH",
  "securityControls": {
    "securityControlType": "custom",
    "securityControlParameters": {
      "minimumPasswordLength": 7,
      "requireUppercaseCharacters": false,
      "requireLowercaseCharacters": false,
      "requireNumbers": false,
      "requireSymbols": false,
      "allowUsersToChangePassword": false,
      "maxPasswordAge": 45,
      "passwordReusePrevention": 5,
      "hardExpiry": false,
      "mfaChecker": false,
      "s3ServerSideEncryptChecker": false,
      "s3IsMfaEnableForDeleteBucketChecker": false,
      "ec2SecurityGroupChecker": false,
      "ec2NAclPortsChecker": false,
      "ec2NAclAllowAllChecker": false,
      "r53NoHostedZones": false,
      "r53NoHealthChecks": false,
      "ebsNonEncryptedVolumes": false,
      "rdsNonEncryptedDbs": false
    }
  },
  "credentials": {
    "accessKey": "AKIAJPRATO3DKQYA4EPQ",
    "secretKey": "uQHUJdDrb08png%7K2guKbADYKnZKz05xke9LjTlEs",
    "roleName": "",
    "roleArn": "",
    "mode": "BASIC",
    "serviceinstancename": "",
    "externalId": "",
    "accountId": "",
    "ssoproperties": {}
  }
}

Example 2 Response Body: Creating an AWS Application in Monitor and Push Mode with Custom Security Controls

The following example shows the contents of the response body in JSON format:

{
  "applicationName": "AWS",
  "instanceId": "64909d3d-3855-5de1-49ed-6452ae9f6365",
  "instanceName": "monitor_seed_custom_basic",
  "tenantId": "12345678-9101-abcd-efgh-ijklmnopqrst",
  "message": "Successfully created application"
}

Example 3 Request Body: Creating an AWS Application in Monitor and Push Mode with Custom Stringent Controls

{
  "applicationName": "AWS",
  "instanceName": "monitor_seed_stringent_basic",
  "monitoringType": "MONITORANDPUSH",
  "securityControls": {
    "securityControlType": "stringent",
    "securityControlParameters": {
      "minimumPasswordLength": 10,
      "requireUppercaseCharacters": false,
      "requireLowercaseCharacters": false,
      "requireNumbers": false,
      "requireSymbols": false,
      "allowUsersToChangePassword": false,
      "maxPasswordAge": 45,
      "passwordReusePrevention": 5,
      "hardExpiry": false,
      "mfaChecker": false,
      "s3ServerSideEncryptChecker": false,
      "s3IsMfaEnableForDeleteBucketChecker": false,
      "ec2SecurityGroupChecker": false,
      "ec2NAclPortsChecker": false,
      "ec2NAclAllowAllChecker": false,
      "r53NoHostedZones": false,
      "r53NoHealthChecks": false,
      "ebsNonEncryptedVolumes": false,
      "rdsNonEncryptedDbs": false
    }
  },
  "credentials": {
    "accessKey": "AKIAJPRATO3DKQYA4EPQ",
    "secretKey": "uQHUJdDrb08png%7K2guKbADYKnZKz05xke9LjTlEs",
    "roleName": "",
    "roleArn": "",
    "mode": "BASIC",
    "serviceinstancename": "",
    "externalId": "",
    "accountId": "",
    "ssoproperties": {}
  }
}

Example 3 Response Body: Creating an AWS Application in Monitor and Push Mode with Stringent Security Controls

The following example shows the contents of the response body in JSON format:

{
  "applicationName": "AWS",
  "instanceId": "12345678-9101-abcd-efgh-ijklmnopqrst",
  "instanceName": "monitor_seed_stringent_basic",
  "tenantId": "abcdefgh-1234-ijkl-5678-mnopqrstuvwx",
  "message": "Successfully created application"
}
Back to Top