

# 사용자에게 Lambda 계층에 대한 액세스 권한 부여
<a name="permissions-user-layer"></a>

[자격 증명 기반 정책](access-control-identity-based.md)을 사용하여 사용자, 사용자 그룹 또는 역할이 Lambda 계층에서 작업을 실행할 수 있도록 허용합니다. 다음 정책은 계층을 만들고 이를 함수에 사용할 수 있는 권한을 사용자에게 부여합니다. 이 리소스 패턴을 통해 사용자는 계층 이름이 AWS 리전로 시작되는 한, 모든 `test-`에서 그리고 모든 계층 버전으로 작업할 수 있습니다.

**Example 계층 개발 정책**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "PublishLayers",
            "Effect": "Allow",
            "Action": [
                "lambda:PublishLayerVersion"
            ],
            "Resource": "arn:aws:lambda:*:*:layer:test-*"
        },
        {
            "Sid": "ManageLayerVersions",
            "Effect": "Allow",
            "Action": [
                "lambda:GetLayerVersion",
                "lambda:DeleteLayerVersion"
            ],
            "Resource": "arn:aws:lambda:*:*:layer:test-*:*"
        }
    ]
}
```

함수 생성 및 구성 중 `lambda:Layer` 조건을 사용하여 계층 사용을 적용할 수도 있습니다. 예를 들어 다른 계정에서 게시한 계층을 사용자가 사용하지 못하게 할 수 있습니다. 다음 정책은 `CreateFunction` 및 `UpdateFunctionConfiguration` 작업에 조건을 추가하여 지정된 계층이 `123456789012` 계정에 속한 계층이어야 하도록 요구합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ConfigureFunctions",
            "Effect": "Allow",
            "Action": [
                "lambda:CreateFunction",
                "lambda:UpdateFunctionConfiguration"
            ],
            "Resource": "*",
            "Condition": {
                "ForAllValues:StringLike": {
                    "lambda:Layer": [
                        "arn:aws:lambda:*:123456789012:layer:*:*"
                    ]
                }
            }
        }
    ]
}
```

------

조건이 적용되도록 하려면, 다른 구문이 이러한 작업에 대한 권한을 사용자에게 부여하지 않는지 확인하세요.