Show / Hide Table of Contents

Class DiscoveryJob

A data discovery job. It helps track job's metadata as well as result statistics.

Inheritance
object
DiscoveryJob
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Oci.DatasafeService.Models
Assembly: OCI.DotNetSDK.Datasafe.dll
Syntax
public class DiscoveryJob

Properties

CompartmentId

Declaration
[Required(ErrorMessage = "CompartmentId is required.")]
[JsonProperty(PropertyName = "compartmentId")]
public string CompartmentId { get; set; }
Property Value
Type Description
string

The OCID of the compartment that contains the discovery job.

Remarks

Required

DefinedTags

Declaration
[JsonProperty(PropertyName = "definedTags")]
public Dictionary<string, Dictionary<string, object>> DefinedTags { get; set; }
Property Value
Type Description
Dictionary<string, Dictionary<string, object>>

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags Example: {"Operations": {"CostCenter": "42"}}

DiscoveryType

Declaration
[Required(ErrorMessage = "DiscoveryType is required.")]
[JsonProperty(PropertyName = "discoveryType")]
[JsonConverter(typeof(ResponseEnumConverter))]
public DiscoveryJob.DiscoveryTypeEnum? DiscoveryType { get; set; }
Property Value
Type Description
DiscoveryJob.DiscoveryTypeEnum?

The type of the discovery job. It defines the job's scope. NEW identifies new sensitive columns in the target database that are not in the sensitive data model. DELETED identifies columns that are present in the sensitive data model but have been deleted from the target database. MODIFIED identifies columns that are present in the target database as well as the sensitive data model but some of their attributes have been modified. ALL covers all the above three scenarios and reports new, deleted and modified columns.

Remarks

Required

DisplayName

Declaration
[Required(ErrorMessage = "DisplayName is required.")]
[JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
Property Value
Type Description
string

The display name of the discovery job.

Remarks

Required

FreeformTags

Declaration
[JsonProperty(PropertyName = "freeformTags")]
public Dictionary<string, string> FreeformTags { get; set; }
Property Value
Type Description
Dictionary<string, string>

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags
Example: {"Department": "Finance"}

Id

Declaration
[Required(ErrorMessage = "Id is required.")]
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type Description
string

The OCID of the discovery job.

Remarks

Required

IsAppDefinedRelationDiscoveryEnabled

Declaration
[Required(ErrorMessage = "IsAppDefinedRelationDiscoveryEnabled is required.")]
[JsonProperty(PropertyName = "isAppDefinedRelationDiscoveryEnabled")]
public bool? IsAppDefinedRelationDiscoveryEnabled { get; set; }
Property Value
Type Description
bool?

Indicates if the discovery job should identify potential application-level (non-dictionary) referential relationships between columns. Note that data discovery automatically identifies and adds database-level (dictionary-defined) relationships. This option helps identify application-level relationships that are not defined in the database dictionary, which in turn, helps identify additional sensitive columns and preserve referential integrity during data masking. It's disabled by default and should be used only if there is a need to identify application-level relationships.

Remarks

Required

IsIncludeAllSchemas

Declaration
[Required(ErrorMessage = "IsIncludeAllSchemas is required.")]
[JsonProperty(PropertyName = "isIncludeAllSchemas")]
public bool? IsIncludeAllSchemas { get; set; }
Property Value
Type Description
bool?

Indicates if all the schemas in the associated target database are used for data discovery. If it is set to true, sensitive data is discovered in all schemas (except for schemas maintained by Oracle).

Remarks

Required

IsIncludeAllSensitiveTypes

Declaration
[Required(ErrorMessage = "IsIncludeAllSensitiveTypes is required.")]
[JsonProperty(PropertyName = "isIncludeAllSensitiveTypes")]
public bool? IsIncludeAllSensitiveTypes { get; set; }
Property Value
Type Description
bool?

Indicates if all the existing sensitive types are used for data discovery. If it's set to true, the sensitiveTypeIdsForDiscovery attribute is ignored and all sensitive types are used.

Remarks

Required

IsSampleDataCollectionEnabled

Declaration
[Required(ErrorMessage = "IsSampleDataCollectionEnabled is required.")]
[JsonProperty(PropertyName = "isSampleDataCollectionEnabled")]
public bool? IsSampleDataCollectionEnabled { get; set; }
Property Value
Type Description
bool?

Indicates if the discovery job should collect and store sample data values for the discovered columns. Sample data helps review the discovered columns and ensure that they actually contain sensitive data. As it collects original data from the target database, it's disabled by default and should be used only if it's acceptable to store sample data in Data Safe's repository in Oracle Cloud. Note that sample data values are not collected for columns with the following data types: LONG, LOB, RAW, XMLTYPE and BFILE.

Remarks

Required

LifecycleState

Declaration
[Required(ErrorMessage = "LifecycleState is required.")]
[JsonProperty(PropertyName = "lifecycleState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public DiscoveryLifecycleState? LifecycleState { get; set; }
Property Value
Type Description
DiscoveryLifecycleState?

The current state of the discovery job.

Remarks

Required

SchemasForDiscovery

Declaration
[JsonProperty(PropertyName = "schemasForDiscovery")]
public List<string> SchemasForDiscovery { get; set; }
Property Value
Type Description
List<string>

The schemas used for data discovery.

SensitiveDataModelId

Declaration
[Required(ErrorMessage = "SensitiveDataModelId is required.")]
[JsonProperty(PropertyName = "sensitiveDataModelId")]
public string SensitiveDataModelId { get; set; }
Property Value
Type Description
string

The OCID of the sensitive data model associated with the discovery job.

Remarks

Required

SensitiveTypeGroupIdsForDiscovery

Declaration
[JsonProperty(PropertyName = "sensitiveTypeGroupIdsForDiscovery")]
public List<string> SensitiveTypeGroupIdsForDiscovery { get; set; }
Property Value
Type Description
List<string>

The OCIDs of the sensitive type groups to be used by data discovery jobs.

SensitiveTypeIdsForDiscovery

Declaration
[JsonProperty(PropertyName = "sensitiveTypeIdsForDiscovery")]
public List<string> SensitiveTypeIdsForDiscovery { get; set; }
Property Value
Type Description
List<string>

The OCIDs of the sensitive types used for data discovery.

SystemTags

Declaration
[JsonProperty(PropertyName = "systemTags")]
public Dictionary<string, Dictionary<string, object>> SystemTags { get; set; }
Property Value
Type Description
Dictionary<string, Dictionary<string, object>>

System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"orcl-cloud": {"free-tier-retained": "true"}}

TablesForDiscovery

Declaration
[JsonProperty(PropertyName = "tablesForDiscovery")]
public List<TablesForDiscovery> TablesForDiscovery { get; set; }
Property Value
Type Description
List<TablesForDiscovery>

The data discovery jobs will scan the tables specified here, including both schemas and tables.

TargetId

Declaration
[Required(ErrorMessage = "TargetId is required.")]
[JsonProperty(PropertyName = "targetId")]
public string TargetId { get; set; }
Property Value
Type Description
string

The OCID of the target database associated with the discovery job.

Remarks

Required

TimeFinished

Declaration
[Required(ErrorMessage = "TimeFinished is required.")]
[JsonProperty(PropertyName = "timeFinished")]
public DateTime? TimeFinished { get; set; }
Property Value
Type Description
DateTime?

The date and time the discovery job finished, in the format defined by RFC3339..

Remarks

Required

TimeStarted

Declaration
[Required(ErrorMessage = "TimeStarted is required.")]
[JsonProperty(PropertyName = "timeStarted")]
public DateTime? TimeStarted { get; set; }
Property Value
Type Description
DateTime?

The date and time the discovery job started, in the format defined by RFC3339.

Remarks

Required

TotalColumnsScanned

Declaration
[Required(ErrorMessage = "TotalColumnsScanned is required.")]
[JsonProperty(PropertyName = "totalColumnsScanned")]
public long? TotalColumnsScanned { get; set; }
Property Value
Type Description
long?

The total number of columns scanned by the discovery job.

Remarks

Required

TotalDeletedSensitiveColumns

Declaration
[Required(ErrorMessage = "TotalDeletedSensitiveColumns is required.")]
[JsonProperty(PropertyName = "totalDeletedSensitiveColumns")]
public long? TotalDeletedSensitiveColumns { get; set; }
Property Value
Type Description
long?

The total number of deleted sensitive columns identified by the discovery job.

Remarks

Required

TotalModifiedSensitiveColumns

Declaration
[Required(ErrorMessage = "TotalModifiedSensitiveColumns is required.")]
[JsonProperty(PropertyName = "totalModifiedSensitiveColumns")]
public long? TotalModifiedSensitiveColumns { get; set; }
Property Value
Type Description
long?

The total number of modified sensitive columns identified by the discovery job.

Remarks

Required

TotalNewSensitiveColumns

Declaration
[Required(ErrorMessage = "TotalNewSensitiveColumns is required.")]
[JsonProperty(PropertyName = "totalNewSensitiveColumns")]
public long? TotalNewSensitiveColumns { get; set; }
Property Value
Type Description
long?

The total number of new sensitive columns identified by the discovery job.

Remarks

Required

TotalObjectsScanned

Declaration
[Required(ErrorMessage = "TotalObjectsScanned is required.")]
[JsonProperty(PropertyName = "totalObjectsScanned")]
public long? TotalObjectsScanned { get; set; }
Property Value
Type Description
long?

The total number of objects (tables and editioning views) scanned by the discovery job.

Remarks

Required

TotalSchemasScanned

Declaration
[Required(ErrorMessage = "TotalSchemasScanned is required.")]
[JsonProperty(PropertyName = "totalSchemasScanned")]
public long? TotalSchemasScanned { get; set; }
Property Value
Type Description
long?

The total number of schemas scanned by the discovery job.

Remarks

Required

In this article
Back to top