У меня возникли трудности с использованием ${iot:Certificate.Subject.SerialNumber} в политике для ограничения теневого доступа к устройству с использованием указанного сертификата.
У меня есть сертификат, выпущенный aws-iot, с серийным номером в шестнадцатеричном формате: 00 FC 63 F4 3D D8 8D 92 B1 19 5E 3C 6B D4 1B 99 1E 60 7C 86 34
Если я преобразую это в десятичную строку, я получу: 1440894724465102159684825527826579699971598878260
Я прикрепил этот сертификат к Вещи с именем: Scoot-1440894724465102159684825527826579699971598878260
Моя политика:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iot:Connect",
"Resource": "arn:aws:iot:eu-central-1:XXXXXXXXXX:client/*"
},
{
"Effect": "Allow",
"Action": [
"iot:Publish",
"iot:Subscribe",
"iot:Receive"
],
"Resource": [
"arn:aws:iot:eu-central-1:XXXXXXXXXX:topic/$aws/things/Scoot-${iot:Certificate.Subject.SerialNumber}/*",
"arn:aws:iot:eu-central-1:XXXXXXXXXX:topicfilter/$aws/things/Scoot-${iot:Certificate.Subject.SerialNumber}/*"
]
}
]
}
Устройство не может публиковать сообщения в теневых темах.
Что я делаю не так?