인증서 정책 예제 - AWS IoT Core

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

인증서 정책 예제

에 등록된 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 사물 이름과 일치하는 클라이언트 ID를 사용하여 장치가 자신을 인증하는 데 사용한 인증서의 이름과 동일한 이름을 가진 주제에 게시하려면: certificateId

{ "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}"] } ] }

에 등록되지 않은 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 클라이언트IDs, client1client2, client3 및 를 사용하여 장치가 자신을 인증하는 데 사용한 인증서의 이름과 동일한 이름을 가진 주제에 게시할 수 있습니다. certificateId

{ "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" ] } ] }

에 등록된 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 사물 이름과 일치하는 클라이언트 ID를 사용하여 디바이스가 자신을 인증하는 데 사용한 인증서의 주체 CommonName 필드와 이름이 동일한 주제에 게시하려면:

{ "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}"] } ] }
참고

이 예에서는 인증서 제목 공통 이름이 주제 식별자로 사용되고, 주제 공통 이름이 등록된 인증서마다 고유하다고 가정합니다. 인증서를 여러 디바이스에서 공유하는 경우, 제목 공통 이름은 이 인증서를 공유하는 모든 디바이스에서 동일하므로, 여러 디바이스에서 동일한 주제에 게시 권한을 허용하게 됩니다(권장되지 않음).

에 등록되지 않은 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 클라이언트IDs, client1client2, client3 및 를 사용하여 장치가 자신을 인증하는 데 사용한 인증서의 주체 CommonName 필드와 동일한 이름을 가진 주제에 게시하려면 다음과 같이 하십시오.

{ "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" ] } ] }
참고

이 예에서는 인증서 제목 공통 이름이 주제 식별자로 사용되고, 주제 공통 이름이 등록된 인증서마다 고유하다고 가정합니다. 인증서를 여러 디바이스에서 공유하는 경우, 제목 공통 이름은 이 인증서를 공유하는 모든 디바이스에서 동일하므로, 여러 디바이스에서 동일한 주제에 게시 권한을 허용하게 됩니다(권장되지 않음).

에 등록된 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 사물 이름과 일치하는 클라이언트 ID를 사용하여 디바이스를 인증하는 데 사용되는 인증서의 Subject.CommonName.2 필드가 로 설정되어 admin/ 있을 때 이름 앞에 접두사가 붙은 주제에 게시할 수 있습니다. Administrator

{ "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" } } } ] }

에 등록되지 않은 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 클라이언트 IDs client1client2, client3 및 를 사용하여 장치를 인증하는 데 사용되는 인증서의 Subject.CommonName.2 필드가 로 admin/ 설정된 경우 이름 앞에 접두사가 붙은 주제에 게시합니다. 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": { "StringEquals": { "iot:Certificate.Subject.CommonName.2": "Administrator" } } } ] }

에 등록된 장치의 경우 AWS IoT Core 레지스트리에 다음 정책은 장치가 사물 이름을 사용하여 특정 주제에 대해 게시할 수 있도록 허용합니다. 이 주제는 장치 인증에 사용되는 인증서의 Subject.CommonName 필드 중 하나가 다음과 같이 설정된 시기로 Administrator 구성됩니다. admin/ ThingName

{ "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" } } } ] }

에 등록되지 않은 디바이스의 경우 AWS IoT Core 레지스트리에 다음 정책은 연결 권한을 부여합니다. AWS IoT Core 장치를 인증하는 데 사용되는 인증서의 Subject.CommonName 필드 중 하나가 다음과 같이 설정된 admin 경우 클라이언트 IDs client1client2, client3 및 를 사용하여 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" } } } ] }