Policy checks

Get the most out of your Policy checks. This hub shows you how to work efficiently and effectively with all Policy checks whether you're working with a core policy check or a Custom policy check that is built specifically to your database.

Policy check workflows

What are policy checks?

Automatically create a snapshot and run checks

Manually create a snapshot and run checks

Run a policy check

Customize a Policy check

Disable Policy checks

Filter the Checks table output

Use Git Bash with Policy checks

Create a new checks settings file

Create an additional checks settings file

Use the checks settings file

Severity and exit codes in Policy check automation

Set policy check severity and exit codes

Policy checks JSON object

Verify naming conventions in your database

What are Check chains?

Create a Check chain

Use your check chain

Troubleshooting your check chain

What are policy checks packages?

Create a checks package file

Use the checks package file

What are Policy check package paths?

Custom policy checks

What is a Liquibase Secure Custom policy check?

Create a custom policy check

Configure a Custom policy check

Implement Liquibase Secure Custom policy checks

What are some examples of Custom policy check scripts?

What are Liquibase Python modules?

Write Dynamic Status Messages for Custom policy checks

What is Custom policy check property substitution?

Apply Property substitution in Custom policy checks

Set Up a Custom Python Virtual Environment for Liquibase Policy Checks

Use Custom Policy Checks with Docker

What default Policy checks does Liquibase offer?

What generic changelog policy checks does Liquibase offer?

Custom policy checks library

billingMode

Check Buffer Pool

Collection Camel Case

Collection Must Have Validator

Column Default Value

Count Rows

Create Index Count

Create Table Space

Current Schema Only

Delete Without Where

Fk Names

Identifiers Without Quotes

Index Different Tablespace

Pk Names Pg

Pk Names

Pk Tablespace

Table Column Disallow

Table Names Uppercase

timestampColumnName

varcharDataIntegrity

Varchar Max Size

Varchar Preferred

Regex Custom policy checks library

CRQLabelRequired

enumerationListContext

MultipleCreateProceduresNotAllowed

MultipleCreateTablesNotAllowed

MultipleDropsNotAllowed

MultipleGrantsNotAllowed

NoDataDmlStatements

NoDbclString

noSelectStar

NoSelect

OnlySpecificSchemasAllowed

TablesMustHaveCreateTableOnly

TablesMustHavePkOrBeNamedNpk

UppercaseTableNames

viewsMustHaveCreateReplaceViewOnly

Cassandra Regex Custom policy checks library

CreateTableMustHaveIFNOTEXIST

CreateTableMustHavePrimaryKey

CreateTableMustHaveSystemKeyFile

DynamoDB Regex Custom policy checks library

DynamoDeleteDynamoTableCheck

DynamoDeleteGlobalSecondaryIndexCheck

DynamoChangetypeAttributes

MariaDB Regex Custom policy checks library

CannotModifyUsersOrRoles

PreventLockingColumnOrIndex

MongoDB Regex Custom policy checks library

mongoCrCollectionValidatorChk

Set the SEARCH_STRING to this valid regular expression:

mongoCreateIdxWarning

mongoNoDeleteMany

mongoNoDropCollection

mongoNoDropIndex

mongoNoMergeAggregation

mongoNoRenameCollection

mongoNoUpdateMany

Oracle Regex Custom policy checks library

CreateTableMustHaveOneGrant

CreateTableMustHavePartition

CreateTableMustHavePrimaryKey

CreateTableNoCompressAdvanced

CreateTableNoCompressFor

CreateTableWithCertainColumnRequiresSequence

CreateTableWithCertainColumnRequiresTrigger

ExecuteImmediateWarning

NoAlterUser

NoCreateRole

NoCreateUser

NoDBLinks

NoDeleteWithoutWhere

NoGrantAll

NoGrantsToPublic

NoGrantsToSystem

NoSystemSchemaChanges

Snowflake Regex Custom policy checks library

CreateObjectCheck

CreateTableMustHaveDataRetention

DatabaseNameNotAllowed

DoNotUseQaOrProdDatabases

DatabaseNameNotAllowed

SQL Server Regex Custom policy checks library

CreateProcedureMustHaveGrantExecute

CreateTableMustHavePrimaryKey

NoAlterIndex

NoAlterProcedure

NoAlterTable

NoBulkInsert

NoCreateTable

NoCursor

NoDataDmlStatements for SQL Server

NoDeleteWithoutWhere

NoExecute

NoGrantExceptGrantExecute

NoGrantWithGrantOption

NoOpenDataSource

NoOpenRowSet

OnlyTempTableDropAllowed

Changelog checks library

ChangeDropColumnWarn

ChangeDropTableWarn

ChangesetAttributesAndValue

ChangesetAttributesSetTrueOrFalse

ChangesetCommentCheck

ChangesetContextCheck

ChangesetLabelCheck

ChangeTruncateTableWarn

CheckRunInTransactionValue

DetectChangeType

EndDelimiterExistsWhenPatternExists

FormattedSqlHeaderRequired

MaxAffectedRowsAllowedDelete

MaxAffectedRowsAllowedInsert

MaxAffectedRowsAllowedUpdate

ModifyDataTypeWarn

MongoChangetypeAttributes

OneChangePerChangeset

PrimaryKeyOnCreateTable

PatternAFollowedByPatternB

PatternAPrecededByPatternB

PatternANotFollowedByPatternB

PatternANotPrecededByPatternB

RequireChangesetIDisUUID

RollbackRequired

SQLGrantAdminWarn

SqlGrantOptionWarn

SqlGrantSpecificPrivsWarn

SqlGrantWarn

SqlRevokeWarn

SqlSelectStarWarn

SqlUserDefinedPatternCheck

UserDefinedContextCheck

UserDefinedLabelCheck

WarnOnUseDatabase

Changelog database checks library

ObjectNameMustMatch

ObjectNameMustNotMatch

OracleReservedKeywords

PostgresNonReservedKeywords

PostgresReservedKeywords

SQLServerFutureReservedKeywords

SQLServerODBCReservedKeywords

SQLServerReservedKeywords

TableColumnLimit

TableCommentCheck

TableCommentPatternCheck

Database checks library

CheckTablesForIndex

ConstraintMustExist

Policy checks library - Liquibase