기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon Verified Permissions OIDC 자격 증명 소스 생성
다음 절차에서는 기존 정책 스토어에 자격 증명 소스를 추가합니다.
Verified Permissions 콘솔에서 새 정책 스토어를 생성할 때 자격 증명 소스를 생성할 수도 있습니다. 이 프로세스에서는 자격 증명 소스 토큰의 클레임을 개체 속성으로 자동으로 가져올 수 있습니다. 안내 설정 또는 API Gateway 및 자격 증명 공급자로 설정 옵션을 선택합니다. 이러한 옵션은 초기 정책도 생성합니다.
정책 스토어를 생성하기 전에는 왼쪽 탐색 창에서 자격 증명 소스를 사용할 수 없습니다. 생성한 자격 증명 소스는 현재 정책 스토어와 연결됩니다.
에서 create-identity-source를 사용하여 자격 증명 소스를 생성 AWS CLI 하거나 Verified Permissions API에서 CreateIdentitySource를 사용하여 자격 증명 소스를 생성할 때 보안 주체 엔터티 유형을 제외할 수 있습니다. 그러나 빈 엔터티 유형은 엔터티 유형이 인 ID 소스를 생성합니다AWS::Cognito
. 이 엔터티 이름은 정책 스토어 스키마와 호환되지 않습니다. Amazon Cognito 자격 증명을 정책 스토어 스키마와 통합하려면 보안 주체 엔터티 유형을 지원되는 정책 스토어 엔터티로 설정해야 합니다.
- AWS Management Console
-
OpenID Connect(OIDC) ID 소스를 생성하려면
Verified Permissions 콘솔을 엽니다. 정책 스토어를 선택합니다.
-
왼쪽 탐색 창에서 자격 증명 소스를 선택합니다.
-
자격 증명 소스 생성을 선택합니다.
-
외부 OIDC 공급자를 선택합니다.
-
발급자 URL에 OIDC 발급자의 URL을 입력합니다. 이는 권한 부여 서버, 서명 키 및와 같은 공급자에 대한 기타 정보를 제공하는 서비스 엔드포인트입니다https://auth.example.com
. 발급자 URL은에서 OIDC 검색 문서를 호스팅해야 합니다/.well-known/openid-configuration
.
-
토큰 유형에서 애플리케이션이 권한 부여를 위해 제출할 OIDC JWT 유형을 선택합니다. 자세한 내용은 스키마에 OIDC 토큰 매핑 단원을 참조하십시오.
-
스키마 엔터티에 토큰 클레임 매핑에서 자격 증명 소스에 대한 사용자 엔터티 및 사용자 클레임을 선택합니다. 사용자 엔터티는 OIDC 공급자의 사용자를 참조하려는 정책 스토어의 엔터티입니다. 사용자 클레임은 일반적으로 평가할 엔터티의 고유 식별자를 포함하는 ID 또는 액세스 토큰sub
의 클레임입니다. 연결된 OIDC IdP의 ID는 선택한 보안 주체 유형에 매핑됩니다.
-
(선택 사항) 스키마 엔터티에 토큰 클레임 매핑에서 자격 증명 소스에 대한 그룹 엔터티 및 그룹 클레임을 선택합니다. 그룹 개체는 사용자 개체의 상위 개체입니다. 그룹 클레임이이 엔터티에 매핑됩니다. 그룹 클레임은 일반적으로 평가할 엔터티groups
에 대한 사용자 그룹 이름의 문자열, JSON 또는 공백으로 구분된 문자열이 포함된 ID 또는 액세스 토큰의 클레임입니다. 연결된 OIDC IdP의 ID는 선택한 보안 주체 유형에 매핑됩니다.
-
검증 - 선택 사항에서 권한 부여 요청에 정책 스토어가 수락할 클라이언트 IDs 또는 대상 URLs 있는 경우 입력합니다.
-
자격 증명 소스 생성을 선택합니다.
(선택 사항) 정책 스토어에 스키마가 있는 경우 Cedar 정책의 자격 증명 또는 액세스 토큰에서 추출한 속성을 참조하려면 먼저 Cedar가 자격 증명 소스가 생성하는 보안 주체 유형을 인식하도록 스키마를 업데이트해야 합니다. 스키마에 추가되는 항목에는 Cedar 정책에서 참조하려는 속성이 포함되어야 합니다. OIDC 토큰 속성을 Cedar 보안 주체 속성에 매핑하는 방법에 대한 자세한 내용은 섹션을 참조하세요스키마에 OIDC 토큰 매핑.
토큰의 정보를 사용하여 권한 부여 결정을 내리는 정책을 생성합니다. 자세한 내용은 Amazon Verified Permissions 정적 정책 생성 단원을 참조하십시오.
이제 자격 증명 소스를 생성하고, 스키마를 업데이트하고, 정책을 생성했으므로 IsAuthorizedWithToken
를 사용하여 Verified Permissions가 권한 부여 결정을 내리도록 합니다. 자세한 내용은 Amazon Verified Permissions API 참조 안내서의 IsAuthorizedWithToken을 참조하세요.
- AWS CLI
-
OIDC 자격 증명 소스를 생성하려면
CreateIdentitySource 작업을 사용하여 자격 증명 소스를 생성할 수 있습니다. 다음 예제에서는 OIDC 자격 증명 공급자(IdP)의 인증된 자격 증명에 액세스할 수 있는 자격 증명 소스를 생성합니다.
create-identity-source
명령의 --configuration
파라미터에서 사용할 OIDC IdP에 대한 다음 세부 정보가 포함된 config.txt
파일을 생성합니다.
{
"openIdConnectConfiguration": {
"issuer": "https://auth.example.com",
"tokenSelection": {
"identityTokenOnly": {
"clientIds":["1example23456789"],
"principalIdClaim": "sub"
},
},
"entityIdPrefix": "MyOIDCProvider",
"groupConfiguration": {
"groupClaim": "groups",
"groupEntityType": "MyCorp::UserGroup"
}
}
}
다음 명령을 실행하여 OIDC 자격 증명 소스를 생성합니다.
$
aws verifiedpermissions create-identity-source \
--configuration file://config.txt \
--principal-entity-type "User" \
--policy-store-id 123456789012
{
"createdDate": "2023-05-19T20:30:28.214829+00:00",
"identitySourceId": "ISEXAMPLEabcdefg111111",
"lastUpdatedDate": "2023-05-19T20:30:28.214829+00:00",
"policyStoreId": "PSEXAMPLEabcdefg111111"
}
(선택 사항) 정책 스토어에 스키마가 있는 경우 Cedar 정책의 자격 증명 또는 액세스 토큰에서 추출한 속성을 참조하려면 먼저 Cedar가 자격 증명 소스가 생성하는 보안 주체 유형을 인식하도록 스키마를 업데이트해야 합니다. 스키마에 추가되는 항목에는 Cedar 정책에서 참조하려는 속성이 포함되어야 합니다. OIDC 토큰 속성을 Cedar 보안 주체 속성에 매핑하는 방법에 대한 자세한 내용은 섹션을 참조하세요스키마에 OIDC 토큰 매핑.
토큰의 정보를 사용하여 권한 부여 결정을 내리는 정책을 생성합니다. 자세한 내용은 Amazon Verified Permissions 정적 정책 생성 단원을 참조하십시오.
이제 자격 증명 소스를 생성하고, 스키마를 업데이트하고, 정책을 생성했으므로 IsAuthorizedWithToken
를 사용하여 Verified Permissions가 권한 부여 결정을 내리도록 합니다. 자세한 내용은 Amazon Verified Permissions API 참조 안내서의 IsAuthorizedWithToken을 참조하세요.