Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di policy di connessione
La seguente politica nega l'autorizzazione al client IDs client1
e client2
a cui connettersi AWS IoT Core, mentre consente ai dispositivi di connettersi utilizzando un ID client. L'ID client corrisponde al nome di un elemento registrato nel AWS IoT Core registro e allegato al principale utilizzato per la connessione:
Per i dispositivi registrati, è consigliabile utilizzare variabili delle policy di oggetto per azioni Connect
e collegare l'oggetto al principale utilizzato per la connessione.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789012:client/client1",
"arn:aws:iot:us-east-1:123456789012:client/client2"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}"
],
"Condition": {
"Bool": {
"iot:Connection.Thing.IsAttached": "true"
}
}
}
]
}
La seguente politica concede l'autorizzazione alla connessione AWS IoT Core con l'ID client. client1
Questo esempio di policy è relativa a dispositivi non registrati.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789012:client/client1"
]
}
]
}
Esempi di policy di sessioni persistenti MQTT
connectAttributes
consente di specificare quali attributi si desidera utilizzare nel messaggio di connessione nelle policy IAM, ad esempio PersistentConnect
e LastWill
. Per ulteriori informazioni, consulta Utilizzo degli Attributi Connect.
La seguente policy permette di connettersi con la funzionalità PersistentConnect
:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
}
]
}
La seguente policy non consente PersistentConnect
, sono consentite altre funzionalità:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAllValues:StringNotEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
}
]
}
La policy di cui sopra può essere espressa anche utilizzando StringEquals
, è consentita qualsiasi altra funzionalità, inclusa la nuova funzionalità:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1"
},
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
}
]
}
La seguente policy permette la connessione sia tramite PersistentConnect
che LastWill
, qualsiasi altra nuova funzionalità non è consentita:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect",
"LastWill"
]
}
}
}
]
}
La seguente policy consente la connessione pulita da parte dei client con o senza LastWill
, non saranno consentite altre funzionalità:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"StringEquals": {
"iot:ConnectAttributes": "LastWill"
}
}
}]
}
La seguente policy consente la connessione solo utilizzando le funzionalità predefinite:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": []
}
}
}
]
}
La seguente policy permette di connettersi solo a PersistentConnect
, qualsiasi nuova funzionalità è consentita fintanto che la connessione utilizza PersistentConnect
:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAnyValue:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
}
]
}
La seguente policy indica che la connessione deve avere sia PersistentConnect
che LastWill
, non è consentita alcuna nuova funzionalità:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect",
"LastWill"
]
}
}
},
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": "*",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
},
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": "*",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": [
"LastWill"
]
}
}
},
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": "*",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": []
}
}
}
]
}
La seguente policy non deve avere PersistentConnect
ma può avere LastWill
, qualsiasi altra nuova funzionalità non è consentita:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
},
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ForAllValues:StringEquals": {
"iot:ConnectAttributes": [
"LastWill"
]
}
}
}
]
}
La seguente policy consente la connessione solo da client che dispongono di un LastWill
con argomento "my/lastwill/topicName"
, qualsiasi funzionalità è consentita purché utilizzi l'argomento LastWill
:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ArnEquals": {
"iot:LastWillTopic": "arn:aws:iot:us-east-1
:123456789012
:topic/my/lastwill/topicName"
}
}
}
]
}
La seguente policy consente solo la connessione pulita utilizzando un LastWillTopic
, qualsiasi funzionalità è consentita purché utilizzi LastWillTopic
:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": "arn:aws:iot:us-east-1:123456789012:client/client1",
"Condition": {
"ArnEquals": {
"iot:LastWillTopic": "arn:aws:iot:us-east-1
:123456789012
:topic/my/lastwill/topicName"
}
}
},
{
"Effect": "Deny",
"Action": [
"iot:Connect"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"iot:ConnectAttributes": [
"PersistentConnect"
]
}
}
}
]
}