Here is all I need and I've done for this which has written in official site.
Access policy
Access restriction requires iRedAPD plugin sql_alias_access_policy, please make sure it's enabled in iRedAPD config file /opt/iredapd/settings.py.
You can restrict which senders are allowed to send email to this mail alias account by adding proper policy name in SQL column alias.accesspolicy. For example:
sql> UPDATE alias SET accesspolicy='domain' WHERE address='alias@mydomain.com';
Available access policies:
Access Policy Name    Comment
public    no restrictions
domain    all users under same domain are allowed to send email to this mail alias account.
subdomain    all users under same domain and all sub-domains are allowed to send email to this mail alias account.
membersonly    only members of this mail alias account are allowd.
moderatorsonly    only moderators of this mail alias account are allowed.
membersandmoderatorsonly    only members and moderators of this mail alias account are allowed.
How to assign a moderator
Moderators are email addresses stored in SQL table moderators. With iRedAPD-1.4.5 and later releases, it's ok to use *@domain.com as (one of) moderator for all users under mail domain 'domain.com'.
To assign user someone@gmail.com and someone@outlook.com as moderator of mail alias alias@mydomain.com:
sql> INSERT INTO moderators (address, moderator, domain, dest_domain)
                    VALUES ('alias@mydomain.com', 'someone@gmail.com', 'mydomain.com', 'gmail.com');
sql> INSERT INTO moderators (address, moderator, domain, dest_domain)
                    VALUES ('alias@mydomain.com', 'someone@outlook.com', 'mydomain.com', 'outlook.com');
https://docs.iredmail.org/sql.create.mail.alias.html