

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

# 채팅 애플리케이션 정책
<a name="orgs_manage_policies_chatbot"></a>

의 채팅 애플리케이션 정책을 AWS Organizations 사용하면 Slack 및 Microsoft Teams와 같은 채팅 애플리케이션에서 조직의 계정에 대한 액세스를 제어할 수 있습니다.

[채팅 애플리케이션의 Amazon Q Developer](https://docs.aws.amazon.com/chatbot/latest/adminguide/what-is.html)는 DevOps 및 소프트웨어 개발 팀이 메시징 프로그램 채팅방을 사용하여 AWS 클라우드에서 운영 이벤트를 모니터링하고 대응하는 AWS 서비스입니다. 채팅 애플리케이션의 Amazon Q Developer는 Amazon Simple Notification Service(Amazon SNS)의 AWS 서비스 알림을 처리하고 채팅룸에 전달하여 팀이 위치에 관계없이 즉시 이를 분석하고 조치를 취할 수 있도록 합니다.

## 채팅 애플리케이션 정책 작동 방식
<a name="orgs_manage_policies_chatbot_how_work"></a>

채팅 애플리케이션 정책을 사용하면 조직의 관리 계정 또는 위임된 관리자가 조직 전체에서 다음을 수행할 수 있습니다.
+ 지원되는 채팅 애플리케이션(Amazon Chime, Microsoft Teams, Slack)을 사용할 수 있도록 적용합니다.
+ 채팅 클라이언트 액세스를 특정 워크스페이스(Slack) 및 팀(Microsoft Teams)으로 제한합니다.
+ Slack 채널 가시성을 퍼블릭 또는 프라이빗 채널로 제한합니다.
+ 특정 [역할 설정](https://docs.aws.amazon.com/chatbot/latest/adminguide/understanding-permissions.html#role-settings)을 설정하고 적용합니다.

채팅 애플리케이션 정책은 [역할 설정](https://docs.aws.amazon.com/chatbot/latest/adminguide/understanding-permissions.html#role-settings) 및 [채널 가드레일 정책](https://docs.aws.amazon.com/chatbot/latest/adminguide/understanding-permissions.html#channel-guardrails)과 같은 계정 수준 설정을 제한하고 우선합니다. 채팅 애플리케이션의 Amazon Q Developer 또는 Organizations 콘솔에서 채팅 애플리케이션 정책에 액세스하고 수정할 수 있습니다.

정책이 계정 및 조직 단위(OU)에 연결되면 범위 내 계정에 대한 현재 및 미래의 모든 채팅 애플리케이션의 Amazon Q Developer 채팅 애플리케이션 구성이 자동으로 거버넌스 및 권한 설정을 준수하게 됩니다. 자세한 내용은 [관리 정책 상속 이해](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_inheritance_mgmt.html)를 참조하세요.

채팅 애플리케이션 정책에 의해 제한된 작업을 수행하려고 하면 채팅 애플리케이션 정책으로 인해 작업이 허용되지 않는다는 오류 메시지가 표시되고 조직의 관리 계정 또는 위임된 관리자에게 문의하라는 권장 사항이 표시됩니다.

**참고**  
채팅 애플리케이션 정책은 런타임에 검증됩니다. 즉, 기존 리소스의 규정 준수 여부를 지속적으로 확인합니다. 알림을 보내거나 채팅 애플리케이션의 Amazon Q Developer와 상호 작용하기 위한 런타임 기반 IAM 권한은 현재 지원되지 않으므로 기존 IAM 권한과 중복되지 않습니다.

# 채팅 애플리케이션 정책 시작하기
<a name="orgs_manage_policies-chatbot_getting-started"></a>

다음 단계에 따라 채팅 애플리케이션 정책 사용을 시작합니다.

1. [채팅 애플리케이션 정책 작업을 수행하는 데 필요한 권한을 알아봅니다](orgs_manage_policies_prereqs.md).

1. [조직에 채팅 애플리케이션 정책을 활성화합니다.](enable-policy-type.md)

1. [채팅 애플리케이션 정책을 생성합니다](orgs_policies_create.md).

1. [채팅 애플리케이션 정책을 조직의 루트, OU 또는 계정에 연결합니다](orgs_policies_attach.md).

1. [계정에 적용되는 결합된 유효 채팅 애플리케이션 정책을 확인합니다](orgs_manage_policies_effective.md).

위의 모든 단계를 수행하려면 조직의 관리 계정에서 IAM 사용자로 로그인하거나, IAM 역할을 맡거나, 루트 사용자로 로그인([권장되지 않음](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#lock-away-credentials))합니다.

**기타 정보**
+ [채팅 애플리케이션 정책 구문을 알아보고 정책 예제 보기](orgs_manage_policies_chatbot_syntax.md)

# 채팅 애플리케이션 정책 구문 및 예제
<a name="orgs_manage_policies_chatbot_syntax"></a>

이 페이지에서는 채팅 애플리케이션 정책에 대해 설명하고 예제를 제공합니다.

## 채팅 애플리케이션 정책에 대한 구문
<a name="chatbot-policy-syntax-reference"></a>

채팅 애플리케이션 정책은 [JSON](http://json.org) 규칙에 따라 구성된 일반 텍스트 파일입니다. 채팅 애플리케이션 정책 구문은 관리 정책 유형에 대한 구문을 따릅니다. 해당 구문에 대한 자세한 내용은 [관리 정책 상속에 대한 이해](orgs_manage_policies_inheritance_mgmt.md) 단원을 참조하세요. 이 항목에서는 채팅 애플리케이션 정책 유형의 특정 요구 사항에 해당 일반 구문을 적용하는 방법을 중점적으로 설명합니다.

다음 예제에서는 채팅 애플리케이션 정책의 기본 구문을 보여줍니다.

```
{
    "chatbot":{
       "platforms":{
          "slack":{
             "client":{
                "@@assign":"enabled" // enabled | disabled
             },
             "workspaces": { // limit 255
                   "@@assign":[
                      "Slack-Workspace-Id"
                   ]
             },
             "default":{
                "supported_channel_types":{
                   "@@assign":[
                      "private" // public | private
                   ]
                },
                "supported_role_settings":{
                   "@@assign":[
                      "user_role" // user_role | channel_role
                   ]
                }
             },
             "overrides":{ // limit 255
                "Slack-Workspace-Id":{
                   "supported_channel_types":{
                      "@@assign":[
                         "public" // public | private
                      ]
                   },
                   "supported_role_settings":{
                      "@@assign":[
                         "user_role" // user_role | channel_role
                      ]
                   }
                }
             }
          },
          "microsoft_teams":{
             "client":{
                "@@assign":"enabled"
             },
             "tenants":{ // limit 36
                "Microsoft-Teams-Tenant-Id":{ // limit 36
                   "@@assign":[
                      "Microsoft-Teams-Team-Id"
                   ]
                }
             },
             "default":{
                "supported_role_settings":{
                   "@@assign":[
                      "user_role" // user_role | channel_role
                   ]
                }
             },
             "overrides":{ // limit 36
                "Microsoft-Teams-Tenant-Id":{ // limit 36
                   "Microsoft-Teams-Team-Id":{
                      "supported_role_settings":{
                         "@@assign":[
                            "user_role" // user_role | channel_role
                         ]
                      }
                   }
                }
             }
          },
          "chime":{
            "client":{
               "@@assign":"disabled" // enabled | disabled
            }
         } 
       },
       "default":{
          "client":{
             "@@assign":"disabled" // enabled | disabled
          }
       }
    }
 }
```

채팅 애플리케이션 정책에는 다음 요소가 포함됩니다.
+ `chatbot` 필드 키 이름입니다. 채팅 애플리케이션 정책은 항상 이 고정 키 이름으로 시작합니다. 이 예제 정책에서 맨 위 줄입니다.
+ `chatbot`에는 Slack, Microsoft Teams, Amazon Chime 등 지원되는 다양한 채팅 애플리케이션에 대한 구성이 포함된 `platforms` 블록이 있습니다.
  + Slack의 경우 다음 필드를 사용할 수 있습니다.
    + `"client"`:
      + `"enabled"`: Slack 클라이언트가 활성화됩니다. Slack 통합이 허용됩니다.
      + `"disabled"`: Slack 클라이언트가 비활성화됩니다. Slack 통합이 허용되지 않습니다.
    + `"workspaces"`: 허용되는 Slack 워크스페이스의 쉼표로 구분된 목록입니다. 이 예제에서 허용되는 Slack 워크스페이스는 *Slack-Workspace-Id1* 및 *Slack-Workspace-Id2*입니다.
    + `"default"`: Slack 워크스페이스의 기본 설정입니다.
      + `"supported_channel_types"`:
        + `"public"`: 범위 내 Slack 워크스페이스가 기본적으로 퍼블릭 Slack 채널을 허용합니다.
        + `"private"`: 범위 내 Slack 워크스페이스가 기본적으로 프라이빗 Slack 채널을 허용합니다.
      + `supported_role_settings`:
        + `"user_role"`: 범위 내 Slack 워크스페이스가 기본적으로 사용자 수준 IAM 역할을 허용합니다.
        + `"channel_role"`: 범위 내 Slack 워크스페이스가 기본적으로 채널 수준 IAM 역할을 허용합니다.
    + `"overrides"`: Slack 워크스페이스의 설정 재정의입니다.
      + `Slack-Workspace-Id2`: 재정의 설정이 적용되는 Slack 워크스페이스의 쉼표로 구분된 목록입니다. 이 예제에서 Slack 워크스페이스는 *Slack-Workspace-Id2*입니다.
        + `"supported_channel_types"`:
          + `"public"`: 범위 내 Slack 워크스페이스가 퍼블릭 Slack 채널을 허용하는지 여부를 재정의합니다.
          + `"private"`: 범위 내 Slack 워크스페이스가 프라이빗 Slack 채널을 허용하는지 여부를 재정의합니다.
        + `supported_role_settings`:
          + `"user_role"`: 범위 내 Slack 워크스페이스가 사용자 수준 IAM 역할을 허용하는지 여부를 재정의합니다.
          + `"channel_role"`: 범위 내 Slack 워크스페이스가 채널 수준 IAM 역할을 허용하는지 여부를 재정의합니다.
  + Microsoft Teams의 경우 다음 필드를 사용할 수 있습니다.
    + `"client"`:
      + `"enabled"`: Microsoft Teams 클라이언트가 활성화됩니다. Microsoft Teams 통합이 허용됩니다.
      + `"disabled"`: Microsoft Teams 클라이언트가 비활성화됩니다. Microsoft Teams 통합이 허용되지 않습니다.
    + `"tenants"`: 허용되는 Microsoft Teams 테넌트의 쉼표로 구분된 목록입니다. 이 예제에서 허용되는 테넌트는 *Microsoft-Teams-Tenant-Id*입니다.
      + `Microsoft-Teams-Tenant-Id`: 테넌트 내에서 허용되는 팀의 쉼표로 구분된 목록입니다. 이 예제에서 허용되는 팀은 *Microsoft-Teams-Team-Id*입니다.
    + `"default"`: 테넌트 내 팀의 기본 설정입니다.
      + `supported_role_settings`:
        + `"user_role"`: 범위 내 팀이 기본적으로 사용자 수준 IAM 역할을 허용합니다.
        + `"channel_role"`: 범위 내 팀이 기본적으로 채널 수준 IAM 역할을 허용합니다.
    + `"overrides"`: Microsoft Teams 테넌트에 대한 재정의 설정입니다.
      + `Microsoft-Teams-Tenant-Id`: 재정의 설정이 적용되는 테넌트의 쉼표로 구분된 목록입니다. 이 예제에서 테넌트는 *Microsoft-Teams-Tenant-Id*입니다.
        + `Microsoft-Teams-Team-Id`: 테넌트 내 팀의 쉼표로 구분된 목록입니다. 이 예제에서 허용되는 팀은 *Microsoft-Teams-Team-Id*입니다.
          + `supported_role_settings`:
            + `"user_role"`: 범위 내 팀이 사용자 수준 IAM 역할을 허용하는지 여부를 재정의합니다.
            + `"channel_role"`: 범위 내 팀이 채널 수준 IAM 역할을 허용하는지 여부를 재정의합니다.
  + Amazon Chime의 경우 다음 필드를 사용할 수 있습니다.
    + `"client"`:
      + `"enabled"`: Amazon Chime 클라이언트가 활성화됩니다. Amazon Chime 통합이 허용됩니다.
      + `"disabled"`: Amazon Chime 클라이언트가 비활성화됩니다. Amazon Chime 통합이 허용되지 않습니다.
+ `chatbot`에는 더 낮은 수준에서 재정의되지 않는 한 조직 전체에서 채팅 애플리케이션의 Amazon Q Developer를 비활성화하는 `default` 블록이 있습니다. 이 기본값은 채팅 애플리케이션의 Amazon Q Developer에서 지원하는 모든 새 채팅 애플리케이션도 비활성화합니다. 예를 들어 채팅 애플리케이션의 Amazon Q Developer에서 새 채팅 애플리케이션을 지원하는 경우 이 기본값은 새로 지원되는 채팅 애플리케이션도 비활성화합니다.

**참고**  
채널 수준 IAM 역할 및 사용자 수준 IAM 역할에 대한 자세한 내용은*채팅 애플리케이션의 Amazon Q Developer 관리자 안내서*의 [채팅 애플리케이션의 Amazon Q Developer 권한 이해](https://docs.aws.amazon.com/chatbot/latest/adminguide/understanding-permissions.html)를 참조하세요.

## 채팅 애플리케이션 정책 예제
<a name="chatbot-policy-examples"></a>

다음 정책 예제는 정보 제공 용도로만 제공됩니다.

### 예제 1: 특정 워크스페이스에서 프라이빗 Slack 채널만 허용, Microsoft Teams 비활성화, 모든 인증 모드 지원
<a name="chatbot-policy-example-1"></a>

다음 정책은 Slack 및 Microsoft Teams 챗봇 통합에 허용되는 구성을 제어하는 데 중점을 둡니다.

```
{
   "chatbot": {
      "platforms": {
         "slack": {
            "client": {
               "@@assign": "enabled"
            },
            "workspaces": {
               "@@assign": [
                  "Slack-Workspace-Id"
               ]
            },
            "default": {
               "supported_channel_types": {
                  "@@assign": [
                     "private"
                  ]
               },
               "supported_role_settings": {
                  "@@assign": [
                     "channel_role",
                     "user_role"
                  ]
               }
            }
         },
         "microsoft_teams": {
            "client": {
               "@@assign": "disabled"
            }
         },
         "chime":{
            "client":{
               "@@assign":"disabled"
            }
         },
         "default":{
            "client":{
               "@@assign":"disabled"
            }
         }
      }
   }
}
```

**Slack의 경우**
+ Slack 클라이언트가 활성화됩니다.
+ 특정 Slack 워크스페이스 *Slack-Workspace-Id*만 허용됩니다.
+ 기본 설정은 프라이빗 Slack 채널, 채널 수준 IAM 역할 및 사용자 수준 IAM 역할만 허용하는 것입니다.

**Microsoft Teams의 경우**
+ Microsoft Teams 클라이언트가 비활성화됩니다.

**Amazon Chime의 경우**
+ Amazon Chime 클라이언트가 비활성화됩니다.

**추가 세부 정보**
+ 하단의 `default` 블록은 클라이언트를 비활성화하도록 설정하며, 더 낮은 수준에서 재정의하지 않는 한 조직 전체에서 채팅 애플리케이션의 Amazon Q Developer를 비활성화합니다. 이 기본값은 채팅 애플리케이션의 Amazon Q Developer에서 지원하는 모든 새 채팅 애플리케이션도 비활성화합니다. 예를 들어 채팅 애플리케이션의 Amazon Q Developer에서 새 채팅 애플리케이션을 지원하는 경우 이 기본값은 새로 지원되는 채팅 애플리케이션도 비활성화합니다.

### 예제 2: 사용자 수준 IAM 역할과의 Slack 통합만 허용
<a name="chatbot-policy-example-2"></a>

다음 정책은 Slack에 대한 보다 허용적인 접근 방식을 취하여 모든 Slack 워크스페이스를 허용하지만 인증 모드를 사용자 수준 IAM 역할로만 제한합니다.

```
{
   "chatbot":{
      "platforms":{
         "slack":{
            "client":{
               "@@assign":"enabled"
            },
            "workspaces":
               {
                  "@@assign":[
                     "*"
                  ]
               },
            "default":{
               "supported_role_settings":{
                  "@@assign":[
                     "user_role"
                  ]
               }
            }
         },
         "microsoft_teams":{
            "client":{
               "@@assign":"disabled"
            }
         },
         "chime":{
            "client":{
               "@@assign":"disabled"
            }
         }
      },
      "default":{
         "client":{
            "@@assign":"disabled"
         }
      }
   }
}
```

**Slack의 경우**
+ Slack 클라이언트가 활성화됩니다.
+ 와일드카드 `"*"`를 사용하여 특정 Slack 워크스페이스를 정의하지 않으므로 모든 워크스페이스가 허용됩니다.
+ 기본 설정은 사용자 수준 IAM 역할만 허용하는 것입니다.

**Microsoft Teams의 경우**
+ Microsoft Teams 클라이언트가 비활성화됩니다.

**Amazon Chime의 경우**
+ Amazon Chime 클라이언트가 비활성화됩니다.

**추가 세부 정보**
+ 하단의 `default` 블록은 클라이언트를 비활성화하도록 설정하며, 더 낮은 수준에서 재정의하지 않는 한 조직 전체에서 채팅 애플리케이션의 Amazon Q Developer를 비활성화합니다. 이 기본값은 채팅 애플리케이션의 Amazon Q Developer에서 지원하는 모든 새 채팅 애플리케이션도 비활성화합니다. 예를 들어 채팅 애플리케이션의 Amazon Q Developer에서 새 채팅 애플리케이션을 지원하는 경우 이 기본값은 새로 지원되는 채팅 애플리케이션도 비활성화합니다.

### 예제 3: 특정 테넌트에서 Microsoft Teams 통합만 허용
<a name="chatbot-policy-example-3"></a>

다음 예제 정책은 Slack 통합을 완전히 차단하면서 지정된 테넌트 내에서만 Microsoft Teams 챗봇 통합을 허용하도록 조직을 잠급니다.

```
{
   "chatbot":{
      "platforms":{
         "slack":{
            "client": {
               "@@assign": "disabled"
            },
         },
         "microsoft_teams":{
            "client": {
               "@@assign": "enabled"
            },
            "tenants":{
               "Microsoft-Teams-Tenant-Id":{
                  "@@assign":[
                     "*"
                  ]
               }
            }
         },
         "chime": {
            "client":{
               "@@assign": "disabled"
            }
         }  
      }
   }
}
```

**Slack의 경우**
+ Slack 클라이언트가 비활성화됩니다.

**Microsoft Teams의 경우**
+ 와일드카드 `"*"`를 사용하여 해당 테넌트 내의 모든 팀을 허용하는 특정 테넌트 *Microsoft-Teams-Tenant-Id*만 허용됩니다.

**Amazon Chime의 경우**
+ Amazon Chime 클라이언트가 비활성화됩니다.

**추가 세부 정보**
+ 하단의 `default` 블록은 클라이언트를 비활성화하도록 설정하며, 더 낮은 수준에서 재정의하지 않는 한 조직 전체에서 채팅 애플리케이션의 Amazon Q Developer를 비활성화합니다. 이 기본값은 채팅 애플리케이션의 Amazon Q Developer에서 지원하는 모든 새 채팅 애플리케이션도 비활성화합니다. 예를 들어 채팅 애플리케이션의 Amazon Q Developer에서 새 채팅 애플리케이션을 지원하는 경우 이 기본값은 새로 지원되는 채팅 애플리케이션도 비활성화합니다.

### 예제 4: Slack 워크스페이스 및 Microsoft Teams 테넌트에 대한 제한된 채팅 애플리케이션의 Amazon Q Developer 액세스 허용
<a name="chatbot-policy-example-4"></a>

다음 정책은 선택한 Slack 워크스페이스 및 Microsoft Teams 테넌트에 대한 제한된 채팅 애플리케이션의 Amazon Q Developer 액세스를 허용합니다.

```
{
    "chatbot":{
       "platforms":{
          "slack":{
             "client":{
                "@@assign":"enabled"
             },
             "workspaces": { 
                   "@@assign":[
                      "Slack-Workspace-Id1",
                      "Slack-Workspace-Id2"
                   ]
             },
             "default":{
                "supported_channel_types":{
                   "@@assign":[
                      "private"
                   ]
                },
                "supported_role_settings":{
                   "@@assign":[
                      "user_role"
                   ]
                }
             },
             "overrides":{
                "Slack-Workspace-Id2":{
                   "supported_channel_types":{
                      "@@assign":[
                         "public",
                         "private"
                      ]
                   },
                   "supported_role_settings":{
                      "@@assign":[
                         "channel_role",
                         "user_role"
                      ]
                   }
                }
             }
          },
          "microsoft_teams":{
             "client":{
                "@@assign":"enabled"
             },
             "tenants":{
                "Microsoft-Teams-Tenant-Id":{
                   "@@assign":[
                      "Microsoft-Teams-Team-Id"
                   ]
                }
             },
             "default":{
                "supported_role_settings":{
                   "@@assign":[
                      "user_role"
                   ]
                }
             },
             "overrides":{
                "Microsoft-Teams-Tenant-Id":{
                   "Microsoft-Teams-Team-Id":{
                      "supported_role_settings":{
                         "@@assign":[
                            "channel_role",
                            "user_role"
                         ]
                      }
                   }
                }
             }
          }
       },
       "default":{
          "client":{
             "@@assign":"disabled"
          }
       }
    }
 }
```

**Slack의 경우**
+ Slack 클라이언트가 활성화됩니다.
+ 허용되는 Slack 워크스페이스는 *Slack-Workspace-Id1* 및 *Slack-Workspace-Id2*입니다.
+ Slack의 기본 설정은 프라이빗 채널 및 사용자 수준 IAM 역할만 허용하는 것입니다.
+ 퍼블릭 채널과 프라이빗 채널은 물론 채널 수준 IAM 역할과 사용자 수준 IAM 역할을 모두 허용하는 *Slack-Workspace-Id2* 워크스페이스에 대한 재정의가 있습니다.

**Microsoft Teams의 경우**
+ Microsoft Teams가 활성화됩니다.
+ 허용되는 Teams 테넌트는 *Microsoft-Teams-Tenant-Id*이고 팀은 *Microsoft-Teams-Team-Id*입니다.
+ 기본 설정은 사용자 수준 IAM 역할만 허용하는 것입니다.
+ 팀 *Microsoft-Teams-Team-Id*에 대한 채널 수준 IAM 역할과 사용자 수준 IAM 역할을 모두 허용하는 테넌트 *Microsoft-Teams-Tenant-Id*에 대한 재정의가 있습니다.

**추가 세부 정보**
+ 하단의 `default` 블록은 클라이언트를 비활성화하도록 설정하며, 더 낮은 수준에서 재정의하지 않는 한 조직 전체에서 채팅 애플리케이션의 Amazon Q Developer를 비활성화합니다. 즉, 이 예제에서는 Amazon Chime이 비활성화됩니다. 이 기본값은 채팅 애플리케이션의 Amazon Q Developer에서 지원하는 모든 새 채팅 애플리케이션도 비활성화합니다. 예를 들어 채팅 애플리케이션의 Amazon Q Developer에서 새 채팅 애플리케이션을 지원하는 경우 이 기본값은 새로 지원되는 채팅 애플리케이션도 비활성화합니다.