Я ожидаю, что Вы хотите фальсифицировать возвращенное сообщение на старом домене. Я использую Exim, и их управление, чтобы сделать это.
Вы также захотите четкое возвращенное сообщение, которое указывает, что электронная почта была принята для доставки, но будущие сообщения должны быть отправлены в новый адрес.
Exim также допускает пользовательские возвращенные сообщения в файле псевдонимов. Это может использоваться для определения нового адреса.
Постфикс или обмен могут иметь схожую функциональность.
Править: Документация Exim довольно хороша. См. главу 40 спецификации (Списки управления доступом) и Глава 11 (Строковые Расширения) для получения дополнительной информации связанных с Вашей проблемой.
Вы могли попробовать запись в получателе ACL что-то вроде этого:
warn
domains = old.example.com
control == fakereject/User ${local_part}@old.example.com has moved \
${local_part}@new.example.net\n\
Your message has been forwarded to their new address.
Перенаправление к Вашему новому серверу может быть сделано отдельными псевдонимами, маршрутизатор перенаправления (см., что глава 22 разделяет 3), или переписать правило (см., что глава 31 Адрес повторно обвиняет), такие как:
*@old.example.com $1@new.example.net T
Для того, чтобы это работало, вам необходимо явно РАЗРЕШИТЬ следующее:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1392679134000",
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateSecurityGroup",
"ec2:DeleteSecurityGroup",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeNetworkAcls",
"ec2:DescribeSecurityGroups",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": [
"*"
]
}
]
}
Вышеупомянутая политика JSON в основном предусматривает, что пользователь имеет доступ ТОЛЬКО к вышеуказанному. У них НЕ будет доступа ни к чему другому. Сюда входят экземпляры ec2, S3, IAM, облачный интерфейс и т. Д.
Похоже, ваша группа безопасности, возможно, используется экземпляром или каким-либо другим ресурсом EC2. Можете ли вы попробовать:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1392336685000",
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": [
"arn:aws:ec2:us-east-1:<MYACCOUNTHERE>:instance/*",
"arn:aws:ec2:us-east-1:<MYACCOUNTHERE>:security-group/*"
]
}
]
}
Если вы хотите ограничить редактирование одной группой безопасности, я думаю, что вам нужно 2 оператора, у меня сработало следующее:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1413232782000",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeNetworkAcls",
"ec2:DescribeSecurityGroups"
],
"Resource": [
"*"
]
},
{
"Sid": "Stmt1413232782001",
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": [
"arn:aws:ec2:us-east-1:<accountid>:security-group/sg-<id>"
]
}
]
}
DescribeInstance может не понадобиться, но в моем случае я хотел это, поэтому не тестировал без него
Я искал ответ на вопрос , который @nsij22 задал в комментариях к принятому ответу. К сожалению, похоже, что это невозможно. Согласно IAM Policy Simulator, только следующие действия из ответа @DevMan14 могут быть использованы со специфическими ресурсами:
Для всего остального симулятор политики IAM говорит:
Это действие не поддерживает разрешения на уровне ресурсов. Политики, предоставляющие доступ, должны указывать "*" в элементе resource.
Это выглядит так:
Все "разрешено" и "запрещено" одинаковы, поэтому я их свернул.
.Ответ, данный Скоттом Муром и выбранный в качестве правильного ответа на момент написания уже не решает проблему. Не вина Скотта, AWS часто меняет многие вещи.
Мы следовали документу AWS и создали пользовательскую политику, которая отлично работала последние 1,5 года или около того, и вдруг сегодня утром наши клиенты столкнулись с проблемами при редактировании групп безопасности, и поэтому я наткнулся на эту тему, чтобы попробовать возможные решения.
В конце концов я создал собственную политику с нуля, так как кажется, что что-то критическое было объявлено устаревшим со стороны политики AWS IAM сегодня утром; так что политика, которая работала на момент написания для меня, была:-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:DescribeSecurityGroups",
"ec2:DescribeSecurityGroupRules",
"ec2:ModifySecurityGroupRules"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:UpdateSecurityGroupRuleDescriptionsEgress",
"ec2:UpdateSecurityGroupRuleDescriptionsIngress"
],
"Resource": "arn:aws:ec2:*:*:security-group/*"
}
]
}
Это:-
Вопрос никогда не касался разрешения создавать новые группы безопасности или удалять существующие группы безопасности, поэтому это не было добавлено в политику, но может быть добавлено читателем, если этого требуют его требования.