Esempi di policy di certificato - AWS IoT Core

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 certificato

Per i dispositivi registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione a AWS IoT Core connettersi a un ID client che corrisponde al nome di un oggetto e a pubblicare su un argomento il cui nome è uguale al certificateId certificato utilizzato dal dispositivo per autenticarsi:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/${iot:CertificateId}"] }, { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}"] } ] }

Per i dispositivi non registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione alla connessione AWS IoT Core con il client IDs client3 e alla pubblicazione su un argomento il cui nome è uguale al certificateId certificato utilizzato dal dispositivo per l'autenticazione: client1 client2

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/${iot:CertificateId}"] }, { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/client1", "arn:aws:iot:us-east-1:123456789012:client/client2", "arn:aws:iot:us-east-1:123456789012:client/client3" ] } ] }

Per i dispositivi registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione a AWS IoT Core connettersi a un ID client che corrisponde al nome dell'oggetto e a pubblicare su un argomento il cui nome è uguale al CommonName campo dell'oggetto del certificato utilizzato dal dispositivo per l'autenticazione:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/${iot:Certificate.Subject.CommonName}"] }, { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}"] } ] }
Nota

In questo esempio, il nome comune dell'oggetto del certificato viene utilizzato come identificatore dell'argomento, presumendo che il nome comune dell'oggetto sia univoco per ogni certificato registrato. Se i certificati sono condivisi tra più dispositivi, il nome comune dell'oggetto è identico per tutti i dispositivi che condividono il certificato, concedendo quindi privilegi di pubblicazione nello stesso argomento da più dispositivi (opzione non consigliata).

Per i dispositivi non registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione alla connessione AWS IoT Core con il client IDs client3 e alla pubblicazione su un argomento il cui nome è uguale al CommonName campo dell'oggetto del certificato utilizzato dal dispositivo per l'autenticazione: client1 client2

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/${iot:Certificate.Subject.CommonName}"] }, { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/client1", "arn:aws:iot:us-east-1:123456789012:client/client2", "arn:aws:iot:us-east-1:123456789012:client/client3" ] } ] }
Nota

In questo esempio, il nome comune dell'oggetto del certificato viene utilizzato come identificatore dell'argomento, presumendo che il nome comune dell'oggetto sia univoco per ogni certificato registrato. Se i certificati sono condivisi tra più dispositivi, il nome comune dell'oggetto è identico per tutti i dispositivi che condividono il certificato, concedendo quindi privilegi di pubblicazione nello stesso argomento da più dispositivi (opzione non consigliata).

Per i dispositivi registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione a connettersi a AWS IoT Core un ID client che corrisponde al nome dell'oggetto e a pubblicare su un argomento il cui nome ha il prefisso admin/ quando il certificato utilizzato per l'autenticazione del dispositivo ha il Subject.CommonName.2 campo impostato suAdministrator:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}"] }, { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/admin/*"], "Condition": { "StringEquals": { "iot:Certificate.Subject.CommonName.2": "Administrator" } } } ] }

Per i dispositivi non registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione alla connessione AWS IoT Core con il client IDs client1 client3 e alla pubblicazione su un argomento il cui nome è preceduto da admin/ quando il certificato utilizzato per l'autenticazione del dispositivo ha il Subject.CommonName.2 campo impostato suAdministrator: client2

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/client1", "arn:aws:iot:us-east-1:123456789012:client/client2", "arn:aws:iot:us-east-1:123456789012:client/client3" ] }, { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/admin/*"], "Condition": { "StringEquals": { "iot:Certificate.Subject.CommonName.2": "Administrator" } } } ] }

Per i dispositivi registrati nel AWS IoT Core registro, la seguente politica consente a un dispositivo di utilizzare il proprio nome oggetto per pubblicare su un argomento specifico, admin/ seguito da ThingName quando il certificato utilizzato per l'autenticazione del dispositivo ha uno dei suoi Subject.CommonName campi impostato suAdministrator:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}"] }, { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/admin/${iot:Connection.Thing.ThingName}"], "Condition": { "ForAnyValue:StringEquals": { "iot:Certificate.Subject.CommonName.List": "Administrator" } } } ] }

Per i dispositivi non registrati nel AWS IoT Core registro, la seguente politica concede l'autorizzazione AWS IoT Core alla connessione al client IDs client1 client3 e alla pubblicazione sull'argomento admin quando uno dei Subject.CommonName campi del certificato utilizzato per l'autenticazione del dispositivo è impostato su: client2 Administrator

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/client1", "arn:aws:iot:us-east-1:123456789012:client/client2", "arn:aws:iot:us-east-1:123456789012:client/client3" ] }, { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": ["arn:aws:iot:us-east-1:123456789012:topic/admin"], "Condition": { "ForAnyValue:StringEquals": { "iot:Certificate.Subject.CommonName.List": "Administrator" } } } ] }