anvil_consortium_manager.auditor.audit.managed_groups module

class anvil_consortium_manager.auditor.audit.managed_groups.ManagedGroupAudit

Bases: AnVILAudit

Class to runs an audit for ManagedGroup instances.

ERROR_DIFFERENT_ROLE = 'App has a different role in this group'

Error when the service account running the app has a different role on AnVIL.

ERROR_GROUP_MEMBERSHIP = 'Group membership does not match in AnVIL'

Error when a ManagedGroup has a different record of membership in the app compared to on AnVIL.

ERROR_NOT_IN_ANVIL = 'Not in AnVIL'

Error when a ManagedGroup in the app does not exist in AnVIL.

audit(cache=False)

Run an audit on managed groups in the app.

cache_key = 'managed_group_audit_results'
class anvil_consortium_manager.auditor.audit.managed_groups.ManagedGroupMembershipAudit(managed_group, *args, **kwargs)

Bases: AnVILAudit

Class that runs an audit for membership of a specific ManagedGroup instance.

ERROR_ACCOUNT_ADMIN_NOT_IN_ANVIL = 'Account not an admin in AnVIL'

Error when an Account is an admin of a ManagedGroup on the app, but not in AnVIL.

ERROR_ACCOUNT_MEMBER_NOT_IN_ANVIL = 'Account not a member in AnVIL'

Error when an Account is a member of a ManagedGroup on the app, but not in AnVIL.

ERROR_DEACTIVATED_ACCOUNT = 'Account is deactivated but still has membership records in the app.'

Error when a deactivated Account still has membership records in the app.

ERROR_GROUP_ADMIN_NOT_IN_ANVIL = 'Group not an admin in AnVIL'

Error when a ManagedGroup is an admin of another ManagedGroup on the app, but not in AnVIL.

ERROR_GROUP_MEMBER_NOT_IN_ANVIL = 'Group not a member in AnVIL'

Error when an ManagedGroup is a member of another ManagedGroup on the app, but not in AnVIL.

get_cache_key()
ignored_table_class

alias of ManagedGroupMembershipIgnoredTable

not_in_app_table_class

alias of ManagedGroupMembershipNotInAppTable

run_audit(cache=False)

Run an audit on all membership of the managed group.

class anvil_consortium_manager.auditor.audit.managed_groups.ManagedGroupMembershipIgnoredResult(*args, current_role=None, **kwargs)

Bases: IgnoredResult

Class to store a not in app audit result for a specific ManagedGroupMembership record.

class anvil_consortium_manager.auditor.audit.managed_groups.ManagedGroupMembershipIgnoredTable(data=None, order_by=None, orderable=None, empty_text=None, exclude=None, attrs=None, row_attrs=None, pinned_row_attrs=None, sequence=None, prefix=None, order_by_field=None, page_field=None, per_page_field=None, template_name=None, default=None, request=None, show_header=None, show_footer=True, extra_columns=None)

Bases: IgnoredTable

A table specific to the IgnoredManagedGroupMembership model.

class Meta

Bases: object

exclude = ('record',)
fields = ('model_instance', 'model_instance__group', 'model_instance__ignored_email', 'model_instance__added_by', 'current_role')
base_columns = {'current_role': <django_tables2.columns.base.Column object>, 'model_instance': <django_tables2.columns.base.Column object>, 'model_instance__added_by': <django_tables2.columns.base.Column object>, 'model_instance__group': <django_tables2.columns.base.Column object>, 'model_instance__ignored_email': <django_tables2.columns.base.Column object>}
class anvil_consortium_manager.auditor.audit.managed_groups.ManagedGroupMembershipNotInAppResult(*args, group=None, email=None, role=None, **kwargs)

Bases: NotInAppResult

Class to store a not in app audit result for a specific ManagedGroupMembership record.

class anvil_consortium_manager.auditor.audit.managed_groups.ManagedGroupMembershipNotInAppTable(data=None, order_by=None, orderable=None, empty_text=None, exclude=None, attrs=None, row_attrs=None, pinned_row_attrs=None, sequence=None, prefix=None, order_by_field=None, page_field=None, per_page_field=None, template_name=None, default=None, request=None, show_header=None, show_footer=True, extra_columns=None)

Bases: NotInAppTable

class Meta

Bases: object

exclude = ('record',)
fields = ('group', 'email', 'role')
base_columns = {'email': <django_tables2.columns.base.Column object>, 'group': <django_tables2.columns.base.Column object>, 'ignore': <django_tables2.columns.templatecolumn.TemplateColumn object>, 'role': <django_tables2.columns.base.Column object>}