Team 워크스페이스
Team 워크스페이스는 팀의 DynoTable 작업 — AI 컨텍스트와 스캔한 테이블 인덱스 — 를 요금제에 속한 모든 사람이 공유하게 해줍니다. 이 모든 것은 여러분 자신의 AWS 계정에 있는 프라이빗 S3 버킷에 저장되며, 각 구성원이 자신의 AWS 자격 증명으로 읽고 씁니다. DynoTable은 여러분의 라이선스를 저장할 뿐, 콘텐츠는 저장하지 않습니다.
요약
- 데이터는 여러분의 계정에 머무릅니다. 공유 콘텐츠는 여러분이 소유한 S3 버킷에 있으며, 각 구성원의 AWS 자격 증명으로 접근합니다. 여러분의 테이블 이름, 속성, 샘플 데이터는 절대 저희 서버에 닿지 않습니다.
- 두 가지가 공유됩니다. 조직 전체 및 테이블별 AI 컨텍스트, 그리고 한 팀원이 한 번 스캔하면 모두가 가져올 수 있는 테이블 인덱스입니다.
- 액세스는 여러분 자신의 IAM입니다. 버킷을 읽을 수는 있지만 쓸 수 없는 구성원은 앱에서 읽기 전용이 됩니다. DynoTable 안에서 관리할 별도의 계정이나 권한은 없습니다.
- 중요한 부분은 옵트인입니다. 테이블 인덱스 게시는 기본적으로 꺼져 있으며, 그 샘플 값은 공유되기 전에 두 번째 옵트인이 필요합니다.
데이터는 여러분의 AWS 계정에 머무릅니다
공유 콘텐츠는 여러분 자신의 AWS 계정에 있는 프라이빗 S3 버킷에 저장됩니다. 모든 구성원은 자신의 AWS 자격 증명 — DynamoDB에 연결할 때 이미 사용하는 바로 그 프로필 — 으로 이를 읽고 씁니다. DynoTable의 서버는 여러분의 라이선스만 보관하며, 여러분의 스키마와 샘플 데이터는 절대 계정을 벗어나지 않습니다.
버킷 이름은 여러분의 AWS 계정과 리전에서 자동으로 도출되므로, 별도로 주고받을 것이 없습니다: 프로필이 동일한 계정과 리전을 가리키는 모든 구성원이 스스로 동일한 버킷을 찾습니다. 팀이 여러 리전에 걸쳐 작업한다면, 대신 각 프로필에 동일한 사용자 지정 버킷 이름을 설정하세요. 관리자는 강화된 기본값으로 한 번에 버킷을 생성할 수 있습니다: 퍼블릭 액세스 차단, 암호화 켜짐, TLS 필수, 그리고 버전 관리 활성화(대체된 이전 버전은 30일 후 만료).
모든 읽기와 쓰기가 여러분 자신의 IAM을 거치므로, 버킷의 권한이 곧 경계입니다. 구성할 별도의 DynoTable 권한 레이어는 없습니다 — IAM에서 구성원에게 쓰기 액세스를 부여하면 게시할 수 있고, 읽기 전용을 부여하면 소비합니다.
공유 AI 컨텍스트
Team 워크스페이스는 팀의 AI 어시스턴트에게 두 계층의 지침을 공유합니다:
- 작업 공간 컨텍스트 — 모든 구성원의 어시스턴트가 읽는 조직 전체 메모: 명명 규칙, 여러분이 표준화한 액세스 패턴, 그리고 여러분의 데이터에 특화된 주의 사항.
- 테이블별 컨텍스트 — 단일 테이블에 첨부된 메모로, 어시스턴트가 그 테이블을 다룰 때마다 함께 반영됩니다.
작업 공간 컨텍스트는 설정 → Knowledge에서, 테이블별 컨텍스트는 Table Settings에서 편집합니다. 버킷에 쓰기 액세스가 있는 사람이 이를 작성하며, 다른 모든 구성원의 어시스턴트는 이를 자동으로 읽습니다. 여러분 자신의 비공개 메모는 로컬에 남으며 Team 요금제가 필요 없습니다 — 공유 계층이 그 위에 놓입니다. 어시스턴트가 이 컨텍스트로 무엇을 하는지는 AI 도구를 참고하세요.

공유 테이블 인덱스
인덱스를 구축하기 위해 큰 테이블을 스캔하는 것 — 자동 완성, 인덱싱된 필드 목록, 어시스턴트의 스키마 인식을 뒷받침하는 데이터 — 은 읽기 용량을 소비합니다. Team 워크스페이스를 사용하면 한 팀원이 그 스캔 비용을 한 번만 지불하고 나머지 모두가 결과를 가져올 수 있어, 사람마다 다시 스캔할 필요가 없습니다.
두 개의 스위치가 인덱스 공유를 보수적으로 유지하며, 둘 다 기본적으로 꺼져 있습니다:
- 게시 — 게시를 켜기 전까지는 인덱스에 관한 어떤 것도 공유되지 않습니다. 켜면 여러분이 구축하는 모든 인덱스가 팀에 자동으로 게시되며, 필요할 때 직접 게시할 수도 있습니다.
- 샘플 값 — 게시가 켜져 있으면, 공유 인덱스는 필드 경로, 타입, 그리고 각 필드가 얼마나 자주 나타나는지를 담습니다. 실제 샘플 값은 값 공유까지 켜야만 전송됩니다.
가져오기는 항상 여러분의 선택입니다. 여러분에게 아직 자체 인덱스가 없을 때, 또는 팀원의 인덱스가 여러분 것보다 최신일 때 DynoTable이 가져오기를 제안합니다; 누구의 스캔을 신뢰할지는 여러분이 결정하며, 가져오기는 여러 기기의 카운트를 병합하는 대신 로컬 인덱스를 대체합니다.
작업 공간 설정하기
- 작업 공간을 사용하는 모든 사람에게는 Team 요금제 좌석과 연결된 자신의 AWS 자격 증명이 필요합니다 — DynamoDB에 사용하는 바로 그 프로필입니다(자세한 내용은 AWS에 연결 참고). 좌석은 팀 구성원에서 배정하세요.
- 관리자가 작업 공간 버킷을 생성하거나 DynoTable을 기존 버킷에 연결합니다. 자동 프로비저닝은 위의 강화된 기본값을 적용합니다.
- 각 구성원에게 필요한 IAM 액세스를 부여하세요: 소비하려면 읽기 전용, 게시하려면 읽기/쓰기. 정책은 아래에 있습니다.
버킷에 접근할 수 있게 되면, 공유 컨텍스트와 인덱스가 좌석을 갖고 이를 읽을 수 있는 자격 증명을 가진 모든 구성원의 앱에 나타납니다.

IAM 정책
DynoTable은 자체 권한 레이어를 추가하지 않으므로, 이 정책들이 액세스 모델의 전부입니다. 여러분 자신의 계정 ID와 리전, 또는 사용자 지정 버킷 이름으로 바꿔 넣으세요.
공유 콘텐츠를 소비하는 구성원에게는 읽기 액세스가 필요합니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "FindWorkspaceBucket",
"Effect": "Allow",
"Action": ["s3:ListBucket", "s3:GetBucketLocation"],
"Resource": "arn:aws:s3:::dynotable-team-<account-id>-<region>"
},
{
"Sid": "ReadSharedContent",
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::dynotable-team-<account-id>-<region>/*"
}
]
}게시하는 구성원(컨텍스트 작성, 인덱스 게시)에게는 그 위에 설명문 하나가 더 필요합니다:
{
"Sid": "PublishSharedContent",
"Effect": "Allow",
"Action": ["s3:PutObject", "s3:DeleteObject"],
"Resource": "arn:aws:s3:::dynotable-team-<account-id>-<region>/*"
}앱에서 버킷을 생성하는 관리자에게는 버킷 수준 권한이 한 번 필요합니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "CreateWorkspaceBucket",
"Effect": "Allow",
"Action": [
"s3:CreateBucket",
"s3:PutBucketPublicAccessBlock",
"s3:PutEncryptionConfiguration",
"s3:PutBucketVersioning",
"s3:PutLifecycleConfiguration",
"s3:PutBucketPolicy",
"s3:PutBucketOwnershipControls"
],
"Resource": "arn:aws:s3:::dynotable-team-<account-id>-<region>"
}
]
}읽기 전용 구성원과 액세스
DynoTable은 모든 사람이 쓸 수 있다고 가정하는 대신, 여러분의 IAM이 실제로 부여하는 액세스를 표시합니다:
- 읽기 전용 구성원 — 버킷을 읽을 수는 있지만 쓸 수 없는 구성원은 읽기 전용 작업 공간을 갖습니다: 공유, 게시, 편집 컨트롤이 "관리자에게 문의하세요" 힌트와 함께 비활성화됩니다. DynoTable은 이를 여러분의 IAM이 거부한 첫 쓰기에서 학습하므로, 새 세션에서는 컨트롤이 자리 잡기 전의 그 첫 시도가 여전히 권한 오류를 보고합니다.
- 새 권한은 새로고침 시 적용됩니다. 관리자가 쓰기 액세스를 부여한 뒤, Team 영역에서 새로고침을 클릭하면 반영됩니다.
- 좌석을 잃으면 작업 공간이 꺼질 뿐, 아무것도 지워지지 않습니다. Team 요금제가 만료되면 팀 인덱스를 가져오거나 공유 AI 컨텍스트가 어시스턴트에 전달되게 할 수 없습니다. 아무것도 삭제되지 않으며, 좌석을 되찾으면 액세스가 복원됩니다.
- 버킷 액세스 부재는 설명됩니다. 버킷에 접근할 수 없는 경우, 앱은 버킷이 아직 존재하지 않는지 아니면 여러분의 자격 증명에 액세스 권한이 없는지 알려주고, 관리자에게 안내합니다.
좌석과 결제
Team 요금제는 좌석 단위로 청구되며, 누가 좌석을 차지할지는 여러분이 정합니다.
- 앱을 사용하는 모든 사람이 좌석을 하나 차지합니다. 구성원 추가와 제거는 팀 구성원에서 하세요. 관리자는 결제와 구성원을 관리하면서 좌석을 차지하고, 구성원은 좌석을 차지하며 앱을 사용합니다.
- 결제 관리자는 좌석을 차지하지 않습니다. 재무, 구매, IT 담당자는 좌석이나 앱 액세스 없이도 구독과 청구서를 관리할 수 있습니다. 결제 페이지에서 그 사람을 결제 관리자로 지정하세요.
- 좌석 수는 팀 규모를 따라갑니다. 좌석은 추가한 구성원 수를 따라가므로, 누군가를 추가하거나 제거하는 것이 청구액을 바꿉니다.
- 팀 전체에 청구서 하나. 구독, 결제 수단, 청구서는 결제 페이지에 모여 있으며, 그곳에서 월간 청구와 연간 청구를 전환할 수 있습니다.
다음 단계
Team 워크스페이스는 Team 요금제의 일부입니다. 좌석에 무엇이 포함되는지는 요금제, 공유 컨텍스트가 무엇에 반영되는지는 AI 도구를 참고하고, 좌석은 조직에서 관리하세요.
팀의 작업 공간을 설정하려면 DynoTable을 다운로드하세요.





