알려진 문제점 및 제한사항
알려진 문제 및 제한 사항으로는 IBM Cloud® 카탈로그의 일부 제품에 대한 액세스를 제한할 수 없는 문제와 IBM Cloud Identity and Access Management (IAM) 리소스 생성의 최대 제한이 있습니다.
계정의 기본 한도를 검토하려면 IBM Cloud IAM 한도를 참조하세요.
Podman 데스크톱 인증 토큰이 새로 고쳐지지 않습니다
이전 버전의 Podman 데스크톱에서 만료된 인증 토큰이 자동으로 새로 고쳐지지 않는 알려진 문제가 있습니다. 만료된 토큰으로 인해 IAM 인증 시도가 반복적으로 실패하게 됩니다. Podman 데스크톱을 설치한 경우 버전 1.19.1 이상으로 업데이트하세요.
Podman 는 IBM 에서 제공하거나 지원하지 않는 타사 제품입니다. IBM 은 IBM Cloud 과 함께 Podman 의 사용에 대해 책임을 지지 않으며, 이와 관련된 어떠한 특정 성능도 보장하지 않습니다.
Google 로그인은 연합 ID를 지원하지 않습니다.
Google ID 로그인은 회사 외부 ID 제공자 (IdP) 에 필요할 수 있는 추가 액세스로 인해 연합 ID가 있는 사용자는 사용할 수 없습니다.
카탈로그 관리 설정이 일부 IBM 제품에 적용되지 않음
일부 제품은 다음 카탈로그 가시성 설정의 영향을 받지 않습니다.
- IBM Cloud 카탈로그의 공개 여부 끄기
- 카탈로그에서 모든 IBM Cloud 제품 제외
- 비공개 카탈로그에서 모든 IBM Cloud 제품 제외
IBM Cloud 콘솔에서 관리 > 카탈로그 > 설정으로 이동하여 카탈로그 공개 설정을 보고 관리할 수 있습니다.
사용자는 계정 또는 사설 카탈로그의 카탈로그 가시성 설정 에 관계없이 API 또는 CLI를 사용하여 다음 제품의 인스턴스를 계속 작성할 수 있습니다.
- Block Storage for VPC
- Citrix Netscaler VPX
- Fortigate Security Appliance
- Hardware Firewall
- Hardware Firewall Dedicated
- IBM Cloud Backup for Classic
- IBM Cloud Bare Metal Servers
- IBM Cloud Block Storage for Classic
- IBM Cloud Container Registry
- IBM Cloud Content Delivery Network
- IBM Cloud Direct Link
- IBM Cloud Direct Link on Classic
- IBM Cloud Functions
- IBM Cloud Gateway Appliance
- IBM Cloud Hardware Security Modules
- IBM Cloud Kubernetes Service
- IBM Cloud Object Storage
- IBM Cloud Schematics
- IBM Cloud Load Balancer
- IBM Cloud Virtual Servers
- 서브넷 및 IP
- 가상 사설 클라우드
- Virtual Server for VPC
- VLAN
- VPN
- VPN for VPC
속성에 기반한 정책 제한사항
액세스 관리 태그는 IAM이 활성화된 모든 서비스를 적용 범위로 하는 액세스 정책을 생성할 때만 사용할 수 있습니다. 이 경우에는 태그를 기반으로 액세스를 사용할 때 기타 속성을 추가할 수 없습니다. 또한 특정 위치 또는 리소스 그룹의 정책을 기반으로 하는 경우 액세스 정책에 태그를 추가할 수 없습니다.
IAM 역할 제한
이름이 다르지만 정확히 동일한 작업 집합을 가진 두 개의 역할을 만들면 실패합니다. IAM은 이름이 고유하더라도 동일한 권한을 가진 역할을 중복으로 취급합니다.
액세스 정책 버전 제한사항
2023 1월 25일부터 IAM은 두 가지 버전의 IAM 정책 관리 API ( /v2/policies 및 /v1/policies) 를 지원합니다. v1/polices 에서는 정책의 주제 및 자원에서 속성에 대한 문자열 비교를 허용합니다. v2/polices 에서는 보다 복잡한 비교 및 연산자와 시간 기반 조건을 허용하면서 역기능 호환성을
제공하는 새 스키마를 소개합니다.
문자열 비교
다음 표에는 /v2/policies 구문을 사용하여 액세스 정책을 구축하는 데 사용할 수 있는 문자열 비교 연산자가 나열되어 있습니다. 각 버전에 대한 자세한 정보는 /v1/policies 와 /v2/policies 구문 비교를 참고하세요.
예를 들어 연산자의 사용 사례는 자원 속성 기반 조건을 참조하십시오.
최대 10개의 조건을 가질 수 있으며 최대 2개의 레벨을 중첩할 수 있습니다.
| 운영자 | 설명 |
|---|---|
stringEquals |
대소문자 구분 문자열 비교입니다. 부울 또는 숫자 값이 비교 전 문자열로 변환됩니다. |
stringMatch |
대소문자 구분 문자열 일치는 패턴과 대상 문자열 사이에 별표( * ), 물음표( ? ), 둘 다, 또는 없음(리터럴 값과 동일)을 사용하여 수행됩니다. 별표(*)는 문자열에서 0개 이상의 문자열의 순서를 표시하고, 물음표(?)는 단일 문자를 표시합니다. 별표 * 와 물음표 ? 도 두 개의 중괄호 {{}} 로 묶어 그대로의 문자 값으로 표현할 수 있습니다. |
stringExists |
Boolean where true 는 문자열이 반드시 있어야 하고, 비어있을 수 있음을 나타냅니다. false 는 문자열이 없어야 함을 나타냅니다. |
stringEqualsAnyOf |
대소문자를 구분하는 정확한 문자열 일치. 문자열 배열에 있는 문자열 중 하나와 일치합니다. 값의 제한은 10개입니다. |
stringMatchAnyOf |
대소문자를 구분하는 문자열로, 문자열 배열에 있는 문자열과 일치합니다. 문자열 값은 별표( * ), 물음표( ? ), 둘 다, 또는 아무것도 포함하지 않을 수 있습니다(리터럴 값과 동일). 별표(*)는 문자열에서 0개 이상의 문자열의 순서를 표시하고, 물음표(?)는 단일 문자를 표시합니다. 별표 * 와 물음표 ? 도 두 개의 중괄호 {{}} 로 묶어 그대로의 문자 값으로 표현할 수 있습니다. 값의 제한은 10개입니다. |
예를 들어, 다음 명령문에는 계정 ID및 서비스 이름이 value 요소와 정확히 일치해야 함을 지정하기 위해 stringEquals 를 사용하는 operator 요소가 포함되어 있습니다. 또한 명령문에는 stringMatch 를 사용하여 특정 자원에 대한 액세스를 구성하는 데 사용할 수 있는 Event Streams 주제의 이름 지정
패턴을 지정하는 operator 요소가 포함되어 있습니다. 이 방법으로 messagehub-topic-dev 로 시작하는 계정의 모든 토픽에 하나의 정책을 지정할 수 있습니다.
"resource": {
"attributes": [
{
"operator": "stringEquals",
"value": "0aeab68aabd14d89bd72e4330150710a0",
"key": "accountId"
},
{
"value": "messagehub",
"operator": "stringEquals",
"key": "serviceName"
},
{
"value": "messagehub-topic-dev*",
"operator": "stringMatch",
"key": "resource"
}
]
}
권한 부여 정책 은 현재 /v1/policies 에서만 지원됩니다.
콘솔에서 정책 버전 확인
IAM 액세스 정책에 대한 시간 기반 및 자원 속성 기반 조건은 /v2/policies 구문을 사용합니다. /v1/policies 구문을 사용하는 정책은 시간 기반 및 자원 속성 기반 조건을 추가하는 데 적합하지 않습니다. API를 사용하여 /v1/policies 를 /v2/policies 로 업데이트하려면 API를 사용하여 /v1/policies 를 /v2/policies 로 업데이트 를 참조하십시오. 콘솔에서 기존 정책에 이러한 조건을 추가할 수 있는지 여부를 확인하려면 다음 단계를 완료하십시오.
- ‘관리’ > ‘액세스(IAM) ’로 이동합니다.
- 확인하려는 정책에 따라 사용자, 신뢰할 수 있는 프로파일, 서비스 ID 또는 액세스 그룹을 선택하십시오.
- 특정 사용자, 신뢰할 수 있는 프로파일, 서비스 ID 또는 액세스 그룹을 선택하십시오.
- 액세스 > 액세스 정책으로 이동하십시오.
- 정책을 클릭하십시오.
/v1/policies는 다음 알림으로 표시됩니다.
Conditions unavailable for v1 policies
- (선택사항)
/v1/policies구문을 사용하는 정책에 조건을 추가하려면 원래 정책을 삭제하고 새 정책을 작성하십시오. 콘솔에서 새 정책은/v2/policies구문을 사용합니다.
API를 사용하여 조건을 사용하여 /v1/policies 를 /v2/policies 로 업데이트
/v1/policies 구문을 사용하는 정책은 시간 기반 및 자원 속성 기반 조건을 추가할 수 없습니다. 버전을 업데이트하기 위해 PUT /v2/policies/{id} 를 V1 ID및 포함하려는 조건과 함께 사용할 수 있습니다. 자세한 정보는 /v2/policies의
내용을 참조하십시오.
/v1/policies 및 /v2/policies 구문 비교
각 예제의 정책은 편집자 역할을 가진 청구 서비스에 대한 사용자 액세스 권한을 부여합니다. /v2/policies 예제에는 "conditions" 매개변수로 표시되는 임시 시간 기반 조건이 포함되어 있습니다.
정책을 편집, 작성 및 삭제할 때 해당 API 버전을 사용하십시오.
/v1/policies
{
"type": "access",
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Editor"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "000c49bc2724a07000010b1da94c4d0"
},
{
"name": "serviceName",
"value": "billing"
}
]
}
],
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-00000AV0S0"
}
]
}
]
}
/v1/policies 를 사용하여 정책을 나열하면 API가 /v1/ 및 계정에 있는 각 /v2/ 정책에 대한 플레이스홀더 정책을 리턴합니다. 자세한 내용은 다음을 참조하십시오. /v1/policies 해당 계정의 ‘ /v2/ ’ 정책에 대한 자리 표시자를 반환합니다
/v2/policies
{
"type": "access",
"control": {
"grant": {
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Editor"
}
]
}
},
"resource": {
"attributes": [
{
"operator": "stringEquals",
"value": "000c49bc2724a07000010b1da94c4d0",
"key": "accountId"
},
{
"value": "billing",
"operator": "stringEquals",
"key": "serviceName"
}
]
},
"rule": {
"operator": "and",
"conditions": [
{
"key": "{{environment.attributes.current_date_time}}",
"operator": "dateTimeGreaterThanOrEquals",
"value": "2023-01-01T09:00:00+00:00"
},
{
"key": "{{environment.attributes.current_date_time}}",
"operator": "dateTimeLessThanOrEquals",
"value": "2023-01-06T17:59:59+00:00"
}
]
},
"pattern": "time-based-conditions:once",
"subject": {
"attributes": [
{
"key": "iam_id",
"operator": "stringEquals",
"value": "IBMid-00000AV0S0"
}
]
}
}
/v1/policies 는 /v2/ 정책의 플레이스홀더를 리턴합니다.
/v1/policies 를 사용하여 정책을 나열하면 API가 /v1/ 및 계정에 있는 각 /v2/ 정책에 대한 플레이스홀더 정책을 리턴합니다. 플레이스홀더는 /v1/ 스키마를 준수하는 동안 계정에 추가 정책이 있음을 표시합니다. /v2/ 정책의 전체 컨텐츠를 보려면 /v2/policies 를 사용하여 정책을 나열하거나 GET: v2/policies/<ID> 를 사용하여 개별 정책을 검색하십시오. 예를 들어, 다음 플레이스홀더 정책을 참조하십시오.
{
"id": "33b901fa-8ec5-4432-a2e6-24b6a212c20a",
"type": "access",
"description": "**This is a unsupported policy version placeholder, to view the full content, please call GET with provided href**",
"subjects": [{
"attributes": [{
"name": "iam_id",
"value": "unsupported version"
}]
}],
"roles": [{
"role_id": "crn:v1:bluemix:public:iam::::role:UnsupportedVersion",
"display_name": "Unsupported Version",
"description": "**This is a unsupported policy version placeholder, to view the full content, please call GET with provided href**"
}],
"resources": [{
"attributes": [{
"name": "accountId",
"value": "000c49bc2724a07000010b1da94c4d0"
}]
}],
"href": "https://iam.cloud.ibm.com/v2/policies/88b901fa-6ec5-888-a2e6-24b6a212c20a"
}
외부 ID 상호 작용 제한으로 인해 영향을 받는 서비스
외부 ID 상호 작용을 제한하려면 계정의 리소스에 대한 IAM 액세스 정책이 있는 사용자가 계정 또는 허용 목록에 있는 계정에서 인증된 경우에만 해당 리소스에 액세스하도록 해야 합니다. 외부 ID 상호 작용 설정이 제한 모드로 설정되어 있는 경우 다음 서비스 또는 일부 기능이 예상대로 작동하지 않을 수 있습니다:
- IBM Cloud Satellite
- IBM Cloud Object Storage- 공개 액세스 버킷에 액세스할 수 없습니다
- IBM Cloud Code Engine
- IBM Cloud® DevOps Insights
- 액세스 보고서( CSV 또는 JSON 리소스 액세스 보고서 생성)
이 설정에 대한 자세한 내용은 외부 ID 상호 작용 관리하기를 참조하세요.