/** * Identity Security Cloud API - SOD Violations * Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. * * The version of the OpenAPI document: v1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import type { RequestArgs } from './base'; import { BaseAPI } from './base'; /** * An enumeration of the types of DTOs supported within the IdentityNow infrastructure. * @export * @enum {string} */ export declare const DtoType: { readonly AccountCorrelationConfig: "ACCOUNT_CORRELATION_CONFIG"; readonly AccessProfile: "ACCESS_PROFILE"; readonly AccessRequestApproval: "ACCESS_REQUEST_APPROVAL"; readonly Account: "ACCOUNT"; readonly Application: "APPLICATION"; readonly Campaign: "CAMPAIGN"; readonly CampaignFilter: "CAMPAIGN_FILTER"; readonly Certification: "CERTIFICATION"; readonly Cluster: "CLUSTER"; readonly ConnectorSchema: "CONNECTOR_SCHEMA"; readonly Entitlement: "ENTITLEMENT"; readonly GovernanceGroup: "GOVERNANCE_GROUP"; readonly Identity: "IDENTITY"; readonly IdentityProfile: "IDENTITY_PROFILE"; readonly IdentityRequest: "IDENTITY_REQUEST"; readonly MachineIdentity: "MACHINE_IDENTITY"; readonly LifecycleState: "LIFECYCLE_STATE"; readonly PasswordPolicy: "PASSWORD_POLICY"; readonly Role: "ROLE"; readonly Rule: "RULE"; readonly SodPolicy: "SOD_POLICY"; readonly Source: "SOURCE"; readonly Tag: "TAG"; readonly TagCategory: "TAG_CATEGORY"; readonly TaskResult: "TASK_RESULT"; readonly ReportResult: "REPORT_RESULT"; readonly SodViolation: "SOD_VIOLATION"; readonly AccountActivity: "ACCOUNT_ACTIVITY"; readonly Workgroup: "WORKGROUP"; }; export type DtoType = typeof DtoType[keyof typeof DtoType]; /** * * @export * @interface ErrorMessageDto */ export interface ErrorMessageDto { /** * The locale for the message text, a BCP 47 language tag. * @type {string} * @memberof ErrorMessageDto */ 'locale'?: string | null; /** * * @type {LocaleOrigin} * @memberof ErrorMessageDto */ 'localeOrigin'?: LocaleOrigin | null; /** * Actual text of the error message in the indicated locale. * @type {string} * @memberof ErrorMessageDto */ 'text'?: string; } /** * * @export * @interface ErrorResponseDto */ export interface ErrorResponseDto { /** * Fine-grained error code providing more detail of the error. * @type {string} * @memberof ErrorResponseDto */ 'detailCode'?: string; /** * Unique tracking id for the error. * @type {string} * @memberof ErrorResponseDto */ 'trackingId'?: string; /** * Generic localized reason for error * @type {Array} * @memberof ErrorResponseDto */ 'messages'?: Array; /** * Plain-text descriptive reasons to provide additional detail to the text provided in the messages field * @type {Array} * @memberof ErrorResponseDto */ 'causes'?: Array; } /** * * @export * @interface ExceptionAccessCriteria */ export interface ExceptionAccessCriteria { /** * * @type {ExceptionCriteria} * @memberof ExceptionAccessCriteria */ 'leftCriteria'?: ExceptionCriteria; /** * * @type {ExceptionCriteria} * @memberof ExceptionAccessCriteria */ 'rightCriteria'?: ExceptionCriteria; } /** * * @export * @interface ExceptionCriteria */ export interface ExceptionCriteria { /** * List of exception criteria. There is a min of 1 and max of 50 items in the list. * @type {Array} * @memberof ExceptionCriteria */ 'criteriaList'?: Array; } /** * Access reference with addition of boolean existing flag to indicate whether the access was extant * @export * @interface ExceptionCriteriaAccess */ export interface ExceptionCriteriaAccess { /** * * @type {DtoType} * @memberof ExceptionCriteriaAccess */ 'type'?: DtoType; /** * ID of the object to which this reference applies * @type {string} * @memberof ExceptionCriteriaAccess */ 'id'?: string; /** * Human-readable display name of the object to which this reference applies * @type {string} * @memberof ExceptionCriteriaAccess */ 'name'?: string; /** * Whether the subject identity already had that access or not * @type {boolean} * @memberof ExceptionCriteriaAccess */ 'existing'?: boolean; } /** * The types of objects supported for SOD violations * @export * @interface ExceptionCriteriaCriteriaListInner */ export interface ExceptionCriteriaCriteriaListInner { /** * The type of object that is referenced * @type {string} * @memberof ExceptionCriteriaCriteriaListInner */ 'type'?: ExceptionCriteriaCriteriaListInnerTypeEnum; /** * ID of the object to which this reference applies * @type {string} * @memberof ExceptionCriteriaCriteriaListInner */ 'id'?: string; /** * Human-readable display name of the object to which this reference applies * @type {string} * @memberof ExceptionCriteriaCriteriaListInner */ 'name'?: string; /** * Whether the subject identity already had that access or not * @type {boolean} * @memberof ExceptionCriteriaCriteriaListInner */ 'existing'?: boolean; } export declare const ExceptionCriteriaCriteriaListInnerTypeEnum: { readonly Entitlement: "ENTITLEMENT"; }; export type ExceptionCriteriaCriteriaListInnerTypeEnum = typeof ExceptionCriteriaCriteriaListInnerTypeEnum[keyof typeof ExceptionCriteriaCriteriaListInnerTypeEnum]; /** * An identity with a set of access to be added * @export * @interface IdentityWithNewAccess */ export interface IdentityWithNewAccess { /** * Identity id to be checked. * @type {string} * @memberof IdentityWithNewAccess */ 'identityId': string; /** * The list of entitlements to consider for possible violations in a preventive check. * @type {Array} * @memberof IdentityWithNewAccess */ 'accessRefs': Array; } /** * Entitlement including a specific set of access. * @export * @interface IdentityWithNewAccessAccessRefsInner */ export interface IdentityWithNewAccessAccessRefsInner { /** * Entitlement\'s DTO type. * @type {string} * @memberof IdentityWithNewAccessAccessRefsInner */ 'type'?: IdentityWithNewAccessAccessRefsInnerTypeEnum; /** * Entitlement\'s ID. * @type {string} * @memberof IdentityWithNewAccessAccessRefsInner */ 'id'?: string; } export declare const IdentityWithNewAccessAccessRefsInnerTypeEnum: { readonly Entitlement: "ENTITLEMENT"; }; export type IdentityWithNewAccessAccessRefsInnerTypeEnum = typeof IdentityWithNewAccessAccessRefsInnerTypeEnum[keyof typeof IdentityWithNewAccessAccessRefsInnerTypeEnum]; /** * An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice. * @export * @enum {string} */ export declare const LocaleOrigin: { readonly Default: "DEFAULT"; readonly Request: "REQUEST"; }; export type LocaleOrigin = typeof LocaleOrigin[keyof typeof LocaleOrigin]; /** * SOD policy. * @export * @interface SodPolicyDto2 */ export interface SodPolicyDto2 { /** * SOD policy DTO type. * @type {string} * @memberof SodPolicyDto2 */ 'type'?: SodPolicyDto2TypeEnum; /** * SOD policy ID. * @type {string} * @memberof SodPolicyDto2 */ 'id'?: string; /** * SOD policy display name. * @type {string} * @memberof SodPolicyDto2 */ 'name'?: string; } export declare const SodPolicyDto2TypeEnum: { readonly SodPolicy: "SOD_POLICY"; }; export type SodPolicyDto2TypeEnum = typeof SodPolicyDto2TypeEnum[keyof typeof SodPolicyDto2TypeEnum]; /** * An object referencing an SOD violation check * @export * @interface SodViolationCheck */ export interface SodViolationCheck { /** * The id of the original request * @type {string} * @memberof SodViolationCheck */ 'requestId': string; /** * The date-time when this request was created. * @type {string} * @memberof SodViolationCheck */ 'created'?: string; } /** * * @export * @interface StartPredictSodViolationsV1401Response */ export interface StartPredictSodViolationsV1401Response { /** * A message describing the error * @type {any} * @memberof StartPredictSodViolationsV1401Response */ 'error'?: any; } /** * * @export * @interface StartPredictSodViolationsV1429Response */ export interface StartPredictSodViolationsV1429Response { /** * A message describing the error * @type {any} * @memberof StartPredictSodViolationsV1429Response */ 'message'?: any; } /** * * @export * @interface ViolationContext */ export interface ViolationContext { /** * * @type {ViolationContextPolicy} * @memberof ViolationContext */ 'policy'?: ViolationContextPolicy; /** * * @type {ExceptionAccessCriteria} * @memberof ViolationContext */ 'conflictingAccessCriteria'?: ExceptionAccessCriteria; } /** * The types of objects supported for SOD violations * @export * @interface ViolationContextPolicy */ export interface ViolationContextPolicy { /** * The type of object that is referenced * @type {string} * @memberof ViolationContextPolicy */ 'type'?: ViolationContextPolicyTypeEnum; /** * SOD policy ID. * @type {string} * @memberof ViolationContextPolicy */ 'id'?: string; /** * * @type {string} * @memberof ViolationContextPolicy */ 'name'?: string; } export declare const ViolationContextPolicyTypeEnum: { readonly Entitlement: "ENTITLEMENT"; }; export type ViolationContextPolicyTypeEnum = typeof ViolationContextPolicyTypeEnum[keyof typeof ViolationContextPolicyTypeEnum]; /** * An object containing a listing of the SOD violation reasons detected by this check. * @export * @interface ViolationPrediction */ export interface ViolationPrediction { /** * List of Violation Contexts * @type {Array} * @memberof ViolationPrediction */ 'violationContexts'?: Array; } /** * SODViolationsApi - axios parameter creator * @export */ export declare const SODViolationsApiAxiosParamCreator: (configuration?: Configuration) => { /** * This API is used to check if granting some additional accesses would cause the subject to be in violation of any SOD policies. Returns the violations that would be caused. * @summary Predict sod violations for identity. * @param {IdentityWithNewAccess} identityWithNewAccess * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startPredictSodViolationsV1: (identityWithNewAccess: IdentityWithNewAccess, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * This API initiates a SOD policy verification asynchronously. * @summary Check sod violations * @param {IdentityWithNewAccess} identityWithNewAccess * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startViolationCheckV1: (identityWithNewAccess: IdentityWithNewAccess, axiosOptions?: RawAxiosRequestConfig) => Promise; }; /** * SODViolationsApi - functional programming interface * @export */ export declare const SODViolationsApiFp: (configuration?: Configuration) => { /** * This API is used to check if granting some additional accesses would cause the subject to be in violation of any SOD policies. Returns the violations that would be caused. * @summary Predict sod violations for identity. * @param {IdentityWithNewAccess} identityWithNewAccess * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startPredictSodViolationsV1(identityWithNewAccess: IdentityWithNewAccess, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * This API initiates a SOD policy verification asynchronously. * @summary Check sod violations * @param {IdentityWithNewAccess} identityWithNewAccess * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startViolationCheckV1(identityWithNewAccess: IdentityWithNewAccess, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * SODViolationsApi - factory interface * @export */ export declare const SODViolationsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * This API is used to check if granting some additional accesses would cause the subject to be in violation of any SOD policies. Returns the violations that would be caused. * @summary Predict sod violations for identity. * @param {SODViolationsApiStartPredictSodViolationsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startPredictSodViolationsV1(requestParameters: SODViolationsApiStartPredictSodViolationsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * This API initiates a SOD policy verification asynchronously. * @summary Check sod violations * @param {SODViolationsApiStartViolationCheckV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startViolationCheckV1(requestParameters: SODViolationsApiStartViolationCheckV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; }; /** * Request parameters for startPredictSodViolationsV1 operation in SODViolationsApi. * @export * @interface SODViolationsApiStartPredictSodViolationsV1Request */ export interface SODViolationsApiStartPredictSodViolationsV1Request { /** * * @type {IdentityWithNewAccess} * @memberof SODViolationsApiStartPredictSodViolationsV1 */ readonly identityWithNewAccess: IdentityWithNewAccess; } /** * Request parameters for startViolationCheckV1 operation in SODViolationsApi. * @export * @interface SODViolationsApiStartViolationCheckV1Request */ export interface SODViolationsApiStartViolationCheckV1Request { /** * * @type {IdentityWithNewAccess} * @memberof SODViolationsApiStartViolationCheckV1 */ readonly identityWithNewAccess: IdentityWithNewAccess; } /** * SODViolationsApi - object-oriented interface * @export * @class SODViolationsApi * @extends {BaseAPI} */ export declare class SODViolationsApi extends BaseAPI { /** * This API is used to check if granting some additional accesses would cause the subject to be in violation of any SOD policies. Returns the violations that would be caused. * @summary Predict sod violations for identity. * @param {SODViolationsApiStartPredictSodViolationsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODViolationsApi */ startPredictSodViolationsV1(requestParameters: SODViolationsApiStartPredictSodViolationsV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * This API initiates a SOD policy verification asynchronously. * @summary Check sod violations * @param {SODViolationsApiStartViolationCheckV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODViolationsApi */ startViolationCheckV1(requestParameters: SODViolationsApiStartViolationCheckV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; }