Files
odoo_source/addons/test_mail/security/ir.model.access.csv
T
Thibault Delavallée 3a0da2278f [IMP] mail: respect alias domains in mail gateway
PURPOSE

Allow alias domains to be multiple, notably to be used in a multi company
environment where each company has its own alias domain.

SPECIFICATIONS

Make mail gateway support alias domains instead of relying on configuration
parameters. This implies the following changes

  * destination alias check is now based on full email by default. Previously
    only left-part of aliases were checked. Optionally an allowed list of
    domains could be additionally checked. Default from now on is to check
    the complete email e.g. 'sales@mydomain.com' != 'sales@mydomain.in';
  * detection of direct write to catchall implies checking all domains
    catchall emails;
  * detection of write to bounce implies checking all domains bounce emails;
  * when having to send bounce emails using the bounce alias as mailer-daemon,
    find the bounce email from the relevant company;

However we have to ease transition from the old ICP-based model used since
ages to the new domain-based model. Notably a common usage of mail gateways
is to do mail forwarding e.g. forward mail from domainA to domainB without
rewriting destination. It means that e.g. sales@mail.domainA should be
considered as a valid alias equivalent to sales@mail.domainB. This was
working due to left-part only check of destination aliases. In order to
keep this setup working after migration a flag is added on aliases allowing
to keep the detection of those aliases based only on local parts.

In summary: When searching for aliases, mailgateway now either checks for
exact email, either for matching local parts when the flag is active. This
is not the default behavior, as we want a stricter comparison of emails by
default but it will be the default behavior at **migration time**.

The 'mail.catchall.domain.allowed' configuration parameter is kept. It is
used only for left-part check aliases, allowing to limit the scope of the
match.

Task-36879 (Mail: Support Multi Domains Aliases)

Part-of: odoo/odoo#76734
2023-10-24 19:24:50 +00:00

6.4 KiB

1idnamemodel_id:idgroup_id:idperm_readperm_writeperm_createperm_unlink
2access_mail_performance_threadaccess_mail_performance_threadmodel_mail_performance_threadbase.group_user1111
3access_mail_performance_tracking_usermail.performance.trackingmodel_mail_performance_trackingbase.group_user1111
4access_mail_test_alias_optional_portalmail.test.alias.optional.portalmodel_mail_test_alias_optionalbase.group_portal1000
5access_mail_test_alias_optional_usermail.test.alias.optional.usermodel_mail_test_alias_optionalbase.group_user1111
6access_mail_test_simple_portalmail.test.simple.portalmodel_mail_test_simplebase.group_portal1000
7access_mail_test_simple_usermail.test.simple.usermodel_mail_test_simplebase.group_user1111
8access_mail_test_simple_unfollow_portalmail.test.simple.unfollow.portalmodel_mail_test_simple_unfollowbase.group_portal0000
9access_mail_test_simple_unfollow_usermail.test.simple.unfollow.usermodel_mail_test_simple_unfollowbase.group_user1111
10access_mail_test_simple_main_attachment_portalmail.test.simple.main.attachment.portalmodel_mail_test_simple_main_attachmentbase.group_portal1000
11access_mail_test_simple_main_attachment_usermail.test.simple.main.attachment.usermodel_mail_test_simple_main_attachmentbase.group_user1111
12access_mail_test_gateway_portalmail.test.gateway.portalmodel_mail_test_gatewaybase.group_portal1000
13access_mail_test_gateway_usermail.test.gateway.usermodel_mail_test_gatewaybase.group_user1111
14access_mail_test_gateway_company_usermail.test.gateway.company.usermodel_mail_test_gateway_companybase.group_user1111
15access_mail_test_gateway_groups_portalmail.test.gateway.groups.portalmodel_mail_test_gateway_groupsbase.group_portal1000
16access_mail_test_gateway_groups_usermail.test.gateway.groups.usermodel_mail_test_gateway_groupsbase.group_user1111
17access_mail_test_track_portalmail.test.track.portalmodel_mail_test_trackbase.group_portal0000
18access_mail_test_track_usermail.test.track.user.employeemodel_mail_test_trackbase.group_user1111
19access_mail_test_activity_portalmail.test.activity.portalmodel_mail_test_activitybase.group_portal1000
20access_mail_test_activity_usermail.test.activity.usermodel_mail_test_activitybase.group_user1111
21access_mail_test_field_type_portalmail.test.field.type.portalmodel_mail_test_field_typebase.group_portal0000
22access_mail_test_field_type_usermail.test.field.type.usermodel_mail_test_field_typebase.group_user1111
23access_mail_test_ticket_portalmail.test.ticket.portalmodel_mail_test_ticketbase.group_portal1000
24access_mail_test_ticket_usermail.test.ticket.usermodel_mail_test_ticketbase.group_user1111
25access_mail_test_ticket_el_portalmail.test.ticket.el.portalmodel_mail_test_ticket_elbase.group_portal1000
26access_mail_test_ticket_el_usermail.test.ticket.el.usermodel_mail_test_ticket_elbase.group_user1111
27access_mail_test_ticket_mc_portalmail.test.ticket.mc.portalmodel_mail_test_ticket_mcbase.group_portal1000
28access_mail_test_ticket_mc_usermail.test.ticket.mc.usermodel_mail_test_ticket_mcbase.group_user1111
29access_mail_test_composer_mixin_allmail.test.composer.mixin.allmodel_mail_test_composer_mixin0000
30access_mail_test_composer_mixin_usermail.test.composer.mixin.usermodel_mail_test_composer_mixinbase.group_user1111
31access_mail_test_composer_source_allmail.test.composer.source.allmodel_mail_test_composer_sourcebase.group_user1000
32access_mail_test_composer_source_usermail.test.composer.source.usermodel_mail_test_composer_sourcebase.group_user1111
33access_mail_test_container_portalmail.test.container_portalmodel_mail_test_containerbase.group_portal1000
34access_mail_test_container_usermail.test.container.usermodel_mail_test_containerbase.group_user1111
35access_mail_test_container_mc_portalmail.test.container.mc.portalmodel_mail_test_container_mcbase.group_portal1000
36access_mail_test_container_mc_usermail.test.container.mc.usermodel_mail_test_container_mcbase.group_user1111
37access_mail_test_cc_portalmail.test.cc.portalmodel_mail_test_ccbase.group_portal1000
38access_mail_test_cc_usermail.test.cc.usermodel_mail_test_ccbase.group_user1111
39access_mail_test_lang_portalmail.test.lang.portalmodel_mail_test_langbase.group_portal1000
40access_mail_test_lang_usermail.test.lang.usermodel_mail_test_langbase.group_user1111
41access_mail_test_multi_company_usermail.test.multi.company.usermodel_mail_test_multi_companybase.group_user1111
42access_mail_test_multi_company_portalmail.test.multi.company.portalmodel_mail_test_multi_companybase.group_portal1000
43access_mail_test_multi_company_read_usermail.test.multi.company.read.usermodel_mail_test_multi_company_readbase.group_user1111
44access_mail_test_multi_company_read_portalmail.test.multi.company.read.portalmodel_mail_test_multi_company_readbase.group_portal1000
45access_mail_test_multi_company_with_activity_usermail.test.multi.company.with.activity.usermodel_mail_test_multi_company_with_activitybase.group_user1111
46access_mail_test_multi_company_with_activity_portalmail.test.multi.company.with.activity.portalmodel_mail_test_multi_company_with_activitybase.group_portal1000
47access_mail_test_nothread_usermail.test.nothread.usermodel_mail_test_nothreadbase.group_user1111
48access_mail_test_nothread_portalmail.test.nothread.portalmodel_mail_test_nothreadbase.group_portal1000
49access_mail_test_track_allmail.test.track.allmodel_mail_test_track_allbase.group_user1111
50access_mail_test_track_all_m2mmail.test.track.all.m2mmodel_mail_test_track_all_m2mbase.group_user1111
51access_mail_test_track_all_o2mmail.test.track.all.o2mmodel_mail_test_track_all_o2mbase.group_user1111
52access_mail_test_track_computemail.test.track.computemodel_mail_test_track_computebase.group_user1111
53access_mail_test_track_monetarymail.test.track.monetarymodel_mail_test_track_monetarybase.group_user1111
54access_mail_test_track_selection_portalmail.test.track.selection.portalmodel_mail_test_track_selectionbase.group_portal0000
55access_mail_test_track_selection_usermail.test.track.selection.usermodel_mail_test_track_selectionbase.group_user1111
56access_mail_test_properties_usermail.test.properties.usermodel_mail_test_propertiesbase.group_user1111
57access_mail_test_mail_tracking_durationmail.test.mail.tracking.durationmodel_mail_test_mail_tracking_durationbase.group_user1111