[{"data":1,"prerenderedAt":2077},["ShallowReactive",2],{"navigation":3,"/aws-connections/security-best-practices":879,"/aws-connections/security-best-practices-surround":2072},[4,22,45,115,156,187,214,235,264,295,318,361,389,418,436,470,491,534,548,571,632,670,693,757,850],{"title":5,"path":6,"stem":7,"children":8,"icon":11},"Introduction","/introduction","01.introduction/1.index",[9,12,17],{"title":10,"path":6,"stem":7,"icon":11},"What is Orkestia?","i-lucide-sparkles",{"title":13,"path":14,"stem":15,"icon":16},"Core Philosophy","/introduction/core-philosophy","01.introduction/2.core-philosophy","i-lucide-shield-check",{"title":18,"path":19,"stem":20,"icon":21},"Key Benefits","/introduction/key-benefits","01.introduction/3.key-benefits","i-lucide-trophy",{"title":23,"path":24,"stem":25,"children":26,"icon":29},"Getting Started","/getting-started","02.getting-started/1.index",[27,30,35,40],{"title":28,"path":24,"stem":25,"icon":29},"Quick Start","i-lucide-rocket",{"title":31,"path":32,"stem":33,"icon":34},"Architecture Overview","/getting-started/architecture-overview","02.getting-started/2.architecture-overview","i-lucide-layout-dashboard",{"title":36,"path":37,"stem":38,"icon":39},"Concepts at a Glance","/getting-started/concepts","02.getting-started/3.concepts","i-lucide-list",{"title":41,"path":42,"stem":43,"icon":44},"Connect an AI Assistant","/getting-started/connect-an-ai-assistant","02.getting-started/4.connect-an-ai-assistant","i-lucide-bot",{"title":46,"path":47,"stem":48,"children":49,"icon":51},"Core Concepts","/concepts","03.concepts/01.index",[50,52,57,62,67,71,76,81,86,91,96,100,105,110],{"title":46,"path":47,"stem":48,"icon":51},"i-lucide-book-open",{"title":53,"path":54,"stem":55,"icon":56},"Workflows","/concepts/workflows","03.concepts/02.workflows","i-lucide-workflow",{"title":58,"path":59,"stem":60,"icon":61},"DGI — Dialog Generative Interface","/concepts/dgi","03.concepts/03.dgi","i-lucide-brain",{"title":63,"path":64,"stem":65,"icon":66},"Staff & AI Workforce Governance","/concepts/staff-governance","03.concepts/04.staff-governance","i-lucide-users-round",{"title":68,"path":69,"stem":70,"icon":44},"Agents — the execution substrate","/concepts/agents-platform","03.concepts/05.agents-platform",{"title":72,"path":73,"stem":74,"icon":75},"Runners & Execution Environments","/concepts/runners","03.concepts/06.runners","i-lucide-server-cog",{"title":77,"path":78,"stem":79,"icon":80},"Lumen Observability","/concepts/lumen","03.concepts/07.lumen","i-lucide-activity",{"title":82,"path":83,"stem":84,"icon":85},"Identity & Multi-Tenancy","/concepts/identity-multi-tenancy","03.concepts/08.identity-multi-tenancy","i-lucide-users",{"title":87,"path":88,"stem":89,"icon":90},"Billing, Pricing & Seats","/concepts/billing-and-seats","03.concepts/09.billing-and-seats","i-lucide-credit-card",{"title":92,"path":93,"stem":94,"icon":95},"App Data","/concepts/appdata","03.concepts/10.appdata","i-lucide-database",{"title":97,"path":98,"stem":99,"icon":61},"Engram","/concepts/engram","03.concepts/11.engram",{"title":101,"path":102,"stem":103,"icon":104},"DevKit","/concepts/devkit","03.concepts/12.devkit","i-lucide-terminal",{"title":106,"path":107,"stem":108,"icon":109},"App Host","/concepts/app-host","03.concepts/13.app-host","i-lucide-globe",{"title":111,"path":112,"stem":113,"icon":114},"Agent Exchange","/concepts/agent-exchange","03.concepts/14.agent-exchange","i-lucide-landmark",{"title":116,"path":117,"stem":118,"children":119,"icon":121},"Guides","/guides","04.guides/1.index",[120,122,127,132,137,142,147,151],{"title":116,"path":117,"stem":118,"icon":121},"i-lucide-compass",{"title":123,"path":124,"stem":125,"icon":126},"Building with DGI","/guides/building-with-dgi","04.guides/2.building-with-dgi","i-lucide-brain-circuit",{"title":128,"path":129,"stem":130,"icon":131},"Creating & Exposing Virtual Workflows","/guides/virtual-workflows","04.guides/4.virtual-workflows","i-lucide-blocks",{"title":133,"path":134,"stem":135,"icon":136},"Runner Management & Provisioning","/guides/runner-management","04.guides/5.runner-management","i-lucide-server",{"title":138,"path":139,"stem":140,"icon":141},"Security & Compliance","/guides/security-and-compliance","04.guides/7.security-and-compliance","i-lucide-shield",{"title":143,"path":144,"stem":145,"icon":146},"Tickets & Software Delivery","/guides/tickets-and-software-delivery","04.guides/8.tickets-and-software-delivery","i-lucide-ticket",{"title":148,"path":149,"stem":150},"Orkestia for AI-driven cloud infrastructure automation","/guides/cloud-automation-alternatives","04.guides/9.cloud-automation-alternatives",{"title":152,"path":153,"stem":154,"icon":155},"Typed decisions with TypeSafe","/guides/typed-decisions-with-typesafe","04.guides/9.typed-decisions-with-typesafe","i-lucide-git-branch",{"title":157,"path":158,"stem":159,"children":160,"icon":162},"Reference","/reference","05.reference/1.index",[161,163,168,173,177,182],{"title":157,"path":158,"stem":159,"icon":162},"i-lucide-library",{"title":164,"path":165,"stem":166,"icon":167},"Workflow Types & Registry","/reference/workflow-types-registry","05.reference/2.workflow-types-registry","i-lucide-list-tree",{"title":169,"path":170,"stem":171,"icon":172},"MCP Integration","/reference/mcp-integration","05.reference/3.mcp-integration","i-lucide-plug-zap",{"title":174,"path":175,"stem":176,"icon":104},"API & Tooling","/reference/api-tooling","05.reference/4.api-tooling",{"title":178,"path":179,"stem":180,"icon":181},"Integrations Catalog","/reference/integrations-catalog","05.reference/6.integrations-catalog","i-lucide-plug",{"title":183,"path":184,"stem":185,"icon":186},"Platform Services","/reference/platform-services","05.reference/7.platform-services","i-lucide-boxes",{"title":188,"path":189,"stem":190,"children":191,"icon":193},"Advanced Topics","/advanced","06.advanced/1.index",[192,194,199,204,209],{"title":188,"path":189,"stem":190,"icon":193},"i-lucide-flask-conical",{"title":195,"path":196,"stem":197,"icon":198},"Hybrid AI + Deterministic Execution","/advanced/hybrid-execution-model","06.advanced/2.hybrid-execution-model","i-lucide-git-merge",{"title":200,"path":201,"stem":202,"icon":203},"Drift Detection & Self-Healing","/advanced/drift-detection-self-healing","06.advanced/3.drift-detection-self-healing","i-lucide-heart-pulse",{"title":205,"path":206,"stem":207,"icon":208},"Governance & Approvals","/advanced/governance-and-approvals","06.advanced/4.governance-and-approvals","i-lucide-scale",{"title":210,"path":211,"stem":212,"icon":213},"Cost & Performance Optimization","/advanced/cost-and-performance","06.advanced/5.cost-and-performance","i-lucide-zap",{"title":215,"path":216,"stem":217,"children":218,"icon":220},"Operations","/operations","07.operations/1.index",[219,221,225,230],{"title":215,"path":216,"stem":217,"icon":220},"i-lucide-settings-2",{"title":222,"path":223,"stem":224,"icon":186},"Deployment Models","/operations/deployment-models","07.operations/2.deployment-models",{"title":226,"path":227,"stem":228,"icon":229},"Monitoring & Debugging","/operations/monitoring-and-debugging","07.operations/3.monitoring-and-debugging","i-lucide-bug",{"title":231,"path":232,"stem":233,"icon":234},"Best Practices","/operations/best-practices","07.operations/4.best-practices","i-lucide-check-check",{"title":236,"path":237,"stem":238,"children":239,"icon":241},"AWS Connections","/aws-connections","08.aws-connections/1.index",[240,242,245,250,255,260],{"title":236,"path":237,"stem":238,"icon":241},"i-simple-icons-amazonaws",{"title":23,"path":243,"stem":244,"icon":29},"/aws-connections/getting-started","08.aws-connections/2.getting-started",{"title":246,"path":247,"stem":248,"icon":249},"Setup Methods","/aws-connections/setup-methods","08.aws-connections/3.setup-methods","i-lucide-wrench",{"title":251,"path":252,"stem":253,"icon":254},"Managing Connections","/aws-connections/managing-connections","08.aws-connections/4.managing-connections","i-lucide-settings",{"title":256,"path":257,"stem":258,"icon":259},"Security Best Practices","/aws-connections/security-best-practices","08.aws-connections/5.security-best-practices","i-lucide-lock",{"title":261,"path":262,"stem":263,"icon":229},"Troubleshooting","/aws-connections/troubleshooting","08.aws-connections/6.troubleshooting",{"title":265,"path":266,"stem":267,"children":268,"icon":270},"Cloud Connections","/cloud-connections","09.cloud-connections/1.index",[269,271,276,281,286,291],{"title":265,"path":266,"stem":267,"icon":270},"i-lucide-cable",{"title":272,"path":273,"stem":274,"icon":275},"Google Cloud (GCP)","/cloud-connections/gcp","09.cloud-connections/2.gcp","i-simple-icons-googlecloud",{"title":277,"path":278,"stem":279,"icon":280},"Microsoft Azure","/cloud-connections/azure","09.cloud-connections/3.azure","i-simple-icons-microsoftazure",{"title":282,"path":283,"stem":284,"icon":285},"Magalu Cloud","/cloud-connections/magalu","09.cloud-connections/4.magalu","i-lucide-cloud",{"title":287,"path":288,"stem":289,"icon":290},"Kubernetes","/cloud-connections/kubernetes","09.cloud-connections/5.kubernetes","i-simple-icons-kubernetes",{"title":292,"path":293,"stem":294,"icon":208},"TypeSafe","/cloud-connections/typesafe","09.cloud-connections/6.typesafe",{"title":296,"path":297,"stem":298,"children":299,"icon":136},"DNS Providers","/dns-providers","10.dns-providers/1.index",[300,302,305,308,311,315],{"title":301,"path":297,"stem":298,"icon":136},"DNS Provider Connections",{"title":23,"path":303,"stem":304,"icon":29},"/dns-providers/getting-started","10.dns-providers/2.getting-started",{"title":246,"path":306,"stem":307,"icon":249},"/dns-providers/setup-methods","10.dns-providers/3.setup-methods",{"title":251,"path":309,"stem":310,"icon":254},"/dns-providers/managing-connections","10.dns-providers/4.managing-connections",{"title":312,"path":313,"stem":314,"icon":39},"Zones and Records","/dns-providers/zones-and-records","10.dns-providers/5.zones-and-records",{"title":261,"path":316,"stem":317,"icon":229},"/dns-providers/troubleshooting","10.dns-providers/6.troubleshooting",{"title":319,"path":320,"stem":321,"children":322,"icon":29},"Cloud Deploy","/cloud-deploy","11.cloud-deploy/01.index",[323,324,327,332,336,341,345,349,354,358],{"title":319,"path":320,"stem":321,"icon":29},{"title":23,"path":325,"stem":326,"icon":29},"/cloud-deploy/getting-started","11.cloud-deploy/02.getting-started",{"title":328,"path":329,"stem":330,"icon":331},"Creating a Site","/cloud-deploy/creating-a-site","11.cloud-deploy/03.creating-a-site","i-lucide-plus-circle",{"title":333,"path":334,"stem":335,"icon":34},"Site Overview and Deployments","/cloud-deploy/site-overview","11.cloud-deploy/04.site-overview",{"title":337,"path":338,"stem":339,"icon":340},"Deployment Progress and Success","/cloud-deploy/deployment-progress","11.cloud-deploy/05.deployment-progress","i-lucide-loader",{"title":342,"path":343,"stem":344,"icon":254},"Settings","/cloud-deploy/settings","11.cloud-deploy/06.settings",{"title":346,"path":347,"stem":348,"icon":109},"Custom Domains","/cloud-deploy/custom-domains","11.cloud-deploy/07.custom-domains",{"title":350,"path":351,"stem":352,"icon":353},"Resources, Releases, and Danger Zone","/cloud-deploy/resources-releases","11.cloud-deploy/08.resources-releases","i-lucide-package",{"title":355,"path":356,"stem":357,"icon":141},"Admin Dashboard","/cloud-deploy/admin-dashboard","11.cloud-deploy/09.admin-dashboard",{"title":261,"path":359,"stem":360,"icon":229},"/cloud-deploy/troubleshooting","11.cloud-deploy/10.troubleshooting",{"title":362,"path":363,"stem":364,"children":365,"icon":368},"User Onboarding","/user-onboarding","12.user-onboarding/1.index",[366,369,372,377,382,386],{"title":367,"path":363,"stem":364,"icon":368},"User Creation and Onboarding","i-lucide-user-plus",{"title":23,"path":370,"stem":371,"icon":29},"/user-onboarding/getting-started","12.user-onboarding/2.getting-started",{"title":373,"path":374,"stem":375,"icon":376},"Creating Your Organization","/user-onboarding/onboarding","12.user-onboarding/3.onboarding","i-lucide-building-2",{"title":378,"path":379,"stem":380,"icon":381},"Invitations","/user-onboarding/invitations","12.user-onboarding/4.invitations","i-lucide-mail",{"title":383,"path":384,"stem":385,"icon":254},"Managing Your Account","/user-onboarding/managing-account","12.user-onboarding/5.managing-account",{"title":261,"path":387,"stem":388,"icon":229},"/user-onboarding/troubleshooting","12.user-onboarding/6.troubleshooting",{"title":342,"path":390,"stem":391,"children":392,"icon":394},"/settings","13.settings/1.index",[393,395,400,404,409,413],{"title":342,"path":390,"stem":391,"icon":394},"i-lucide-sliders-horizontal",{"title":396,"path":397,"stem":398,"icon":399},"General Settings","/settings/general","13.settings/2.general","i-lucide-user",{"title":401,"path":402,"stem":403,"icon":85},"Members Settings","/settings/members","13.settings/3.members",{"title":405,"path":406,"stem":407,"icon":408},"Notifications Settings","/settings/notifications","13.settings/4.notifications","i-lucide-bell",{"title":410,"path":411,"stem":412,"icon":141},"Security Settings","/settings/security","13.settings/5.security",{"title":414,"path":415,"stem":416,"icon":417},"Signing Keys","/settings/keys","13.settings/6.keys","i-lucide-key-round",{"title":419,"path":420,"stem":421,"children":422,"icon":29},"App Enablement","/app-enablement","14.app-enablement/1.index",[423,424,428,432],{"title":419,"path":420,"stem":421,"icon":29},{"title":425,"path":426,"stem":427,"icon":417},"Sign in with Orkestia","/app-enablement/sign-in-with-orkestia","14.app-enablement/2.sign-in-with-orkestia",{"title":429,"path":430,"stem":431,"icon":95},"End-user data","/app-enablement/end-user-data","14.app-enablement/3.end-user-data",{"title":433,"path":434,"stem":435,"icon":131},"Compositions — use, invoke, share","/app-enablement/compositions","14.app-enablement/4.compositions",{"title":437,"path":438,"stem":439,"children":440,"icon":80},"Lumen","/lumen","15.lumen/1.index",[441,442,447,452,457,461,465],{"title":437,"path":438,"stem":439,"icon":80},{"title":443,"path":444,"stem":445,"icon":446},"Enable Lumen","/lumen/enable","15.lumen/2.enable","i-lucide-power",{"title":448,"path":449,"stem":450,"icon":451},"Send data","/lumen/send-data","15.lumen/3.send-data","i-lucide-upload",{"title":453,"path":454,"stem":455,"icon":456},"Collector","/lumen/collector","15.lumen/4.collector","i-lucide-container",{"title":458,"path":459,"stem":460,"icon":34},"Use Lumen","/lumen/observe","15.lumen/5.observe",{"title":462,"path":463,"stem":464,"icon":44},"Lumen MCP","/lumen/mcp","15.lumen/6.mcp",{"title":466,"path":467,"stem":468,"icon":469},"Query API","/lumen/query-api","15.lumen/7.query-api","i-lucide-search",{"title":471,"path":472,"stem":473,"children":474,"icon":476},"SDKs","/sdks","16.sdks/1.index",[475,477,482,487],{"title":471,"path":472,"stem":473,"icon":476},"i-lucide-code",{"title":478,"path":479,"stem":480,"icon":481},"Workflows SDK — Node / TypeScript","/sdks/workflows-nodejs","16.sdks/2.workflows-nodejs","i-lucide-file-ts",{"title":483,"path":484,"stem":485,"icon":486},"Workflows SDK — Python","/sdks/workflows-python","16.sdks/3.workflows-python","i-simple-icons-python",{"title":488,"path":489,"stem":490,"icon":417},"Auth SDK — Sign in with Orkestia","/sdks/auth","16.sdks/4.auth",{"title":92,"path":492,"stem":493,"children":494,"icon":95},"/appdata","17.appdata/1.index",[495,496,501,506,510,515,520,525,530],{"title":92,"path":492,"stem":493,"icon":95},{"title":497,"path":498,"stem":499,"icon":500},"Declare structures","/appdata/declare","17.appdata/2.declare","i-lucide-table",{"title":502,"path":503,"stem":504,"icon":505},"Records & Data API","/appdata/data-api","17.appdata/3.data-api","i-lucide-rows-3",{"title":507,"path":508,"stem":509,"icon":376},"Ownership & workspaces","/appdata/ownership","17.appdata/4.ownership",{"title":511,"path":512,"stem":513,"icon":514},"Expose App Data to end-users","/appdata/expose","17.appdata/5.expose","i-lucide-app-window",{"title":516,"path":517,"stem":518,"icon":519},"PostgREST HTTP","/appdata/postgrest","17.appdata/6.postgrest","i-lucide-unplug",{"title":521,"path":522,"stem":523,"icon":524},"Ordered append","/appdata/append","17.appdata/7.append","i-lucide-list-ordered",{"title":526,"path":527,"stem":528,"icon":529},"Databases and instances","/appdata/instances","17.appdata/8.instances","i-lucide-hard-drive",{"title":531,"path":532,"stem":533,"icon":104},"Query console and SQL","/appdata/query","17.appdata/9.query",{"title":97,"path":535,"stem":536,"children":537,"icon":61},"/engram","18.engram/1.index",[538,539,543],{"title":97,"path":535,"stem":536,"icon":61},{"title":540,"path":541,"stem":542,"icon":155},"Write & recall","/engram/write-recall","18.engram/2.write-recall",{"title":544,"path":545,"stem":546,"icon":547},"Field & feed","/engram/agent-memory","18.engram/3.agent-memory","i-lucide-radio",{"title":101,"path":549,"stem":550,"children":551,"icon":104},"/devkit","19.devkit/1.index",[552,553,558,562,567],{"title":101,"path":549,"stem":550,"icon":104},{"title":554,"path":555,"stem":556,"icon":557},"Install DevKit","/devkit/install","19.devkit/2.install","i-lucide-download",{"title":559,"path":560,"stem":561,"icon":519},"Hook redirect","/devkit/hooks","19.devkit/3.hooks",{"title":563,"path":564,"stem":565,"icon":566},"Local coding runner","/devkit/local-runner","19.devkit/4.local-runner","i-lucide-cpu",{"title":568,"path":569,"stem":570,"icon":131},"Compositions from DevKit","/devkit/compositions","19.devkit/5.compositions",{"title":572,"path":573,"stem":574,"children":575,"icon":44},"Staff & Agents","/staff-and-agents","20.staff-and-agents/01.index",[576,577,582,586,590,594,598,602,606,611,615,620,625,629],{"title":572,"path":573,"stem":574,"icon":44},{"title":578,"path":579,"stem":580,"icon":581},"Prerequisites","/staff-and-agents/prerequisites","20.staff-and-agents/02.prerequisites","i-lucide-list-checks",{"title":583,"path":584,"stem":585,"icon":368},"Hire an actor","/staff-and-agents/hire-an-actor","20.staff-and-agents/03.hire-an-actor",{"title":587,"path":588,"stem":589,"icon":34},"Console","/staff-and-agents/console","20.staff-and-agents/04.console",{"title":591,"path":592,"stem":593,"icon":11},"Configs, skills, and MCP","/staff-and-agents/configs-skills-mcp","20.staff-and-agents/05.configs-skills-mcp",{"title":595,"path":596,"stem":597,"icon":136},"Agent runner groups","/staff-and-agents/runner-groups","20.staff-and-agents/06.runner-groups",{"title":599,"path":600,"stem":601,"icon":16},"Governance","/staff-and-agents/governance","20.staff-and-agents/07.governance",{"title":603,"path":604,"stem":605,"icon":417},"Identity and tokens","/staff-and-agents/identity","20.staff-and-agents/08.identity",{"title":607,"path":608,"stem":609,"icon":610},"Memory and cost","/staff-and-agents/memory-and-cost","20.staff-and-agents/09.memory-and-cost","i-lucide-wallet",{"title":612,"path":613,"stem":614,"icon":155},"Coding agents","/staff-and-agents/coding-agents","20.staff-and-agents/10.coding-agents",{"title":616,"path":617,"stem":618,"icon":619},"Wire a repository for coding agents","/staff-and-agents/wire-a-repository","20.staff-and-agents/11.wire-a-repository","i-lucide-link",{"title":621,"path":622,"stem":623,"icon":624},"Run a ticket end to end","/staff-and-agents/run-a-ticket","20.staff-and-agents/12.run-a-ticket","i-lucide-play",{"title":626,"path":627,"stem":628,"icon":66},"Build a product team of actors","/staff-and-agents/build-a-product-team","20.staff-and-agents/13.build-a-product-team",{"title":261,"path":630,"stem":631,"icon":249},"/staff-and-agents/troubleshooting","20.staff-and-agents/14.troubleshooting",{"title":106,"path":633,"stem":634,"children":635,"icon":109},"/app-host","21.app-host/1.index",[636,637,641,644,649,653,658,662,666],{"title":106,"path":633,"stem":634,"icon":109},{"title":638,"path":639,"stem":640,"icon":514},"Your app and site","/app-host/your-app","21.app-host/2.your-app",{"title":92,"path":642,"stem":643,"icon":95},"/app-host/app-data","21.app-host/3.app-data",{"title":645,"path":646,"stem":647,"icon":648},"Website and process","/app-host/hosting","21.app-host/4.hosting","i-lucide-cloud-upload",{"title":650,"path":651,"stem":652,"icon":547},"Buzz","/app-host/buzz","21.app-host/5.buzz",{"title":654,"path":655,"stem":656,"icon":657},"Files","/app-host/files","21.app-host/6.files","i-lucide-folder",{"title":659,"path":660,"stem":661,"icon":109},"Your own domain","/app-host/your-domain","21.app-host/7.your-domain",{"title":663,"path":664,"stem":665,"icon":229},"Troubleshooting App Host","/app-host/troubleshooting","21.app-host/8.troubleshooting",{"title":667,"path":668,"stem":669,"icon":417},"Signing keys","/app-host/signing-keys","21.app-host/9.signing-keys",{"title":111,"path":671,"stem":672,"children":673,"icon":114},"/agent-exchange","22.agent-exchange/01.index",[674,675,678,682,686,690],{"title":111,"path":671,"stem":672,"icon":114},{"title":583,"path":676,"stem":677,"icon":368},"/agent-exchange/hire","22.agent-exchange/02.hire",{"title":679,"path":680,"stem":681,"icon":208},"List an actor","/agent-exchange/list","22.agent-exchange/03.list",{"title":683,"path":684,"stem":685,"icon":104},"Invoke & leases","/agent-exchange/invoke","22.agent-exchange/04.invoke",{"title":687,"path":688,"stem":689,"icon":141},"Settlement & trust","/agent-exchange/settlement","22.agent-exchange/05.settlement",{"title":53,"path":691,"stem":692,"icon":56},"/agent-exchange/workflows","22.agent-exchange/06.workflows",{"title":694,"path":695,"stem":696,"children":697,"icon":75},"Runners","/runners","23.runners/1.index",[698,700,704,709,713,717,721,726,730,734,738,741,745,749,753],{"title":699,"path":695,"stem":696,"icon":75},"Runner groups",{"title":701,"path":702,"stem":703,"icon":275},"Cloud Run","/runners/cloud-run","23.runners/10.cloud-run",{"title":705,"path":706,"stem":707,"icon":708},"DigitalOcean App Job","/runners/do-app-job","23.runners/11.do-app-job","i-simple-icons-digitalocean",{"title":710,"path":711,"stem":712,"icon":708},"DigitalOcean Droplet","/runners/do-droplet","23.runners/12.do-droplet",{"title":714,"path":715,"stem":716,"icon":285},"Magalu Cloud VM","/runners/magalu-vm","23.runners/13.magalu-vm",{"title":101,"path":718,"stem":719,"icon":720},"/runners/devkit","23.runners/14.devkit","i-lucide-laptop",{"title":722,"path":723,"stem":724,"icon":725},"Purposes & integrations","/runners/purposes","23.runners/16.purposes","i-lucide-layers",{"title":727,"path":728,"stem":729,"icon":241},"Fargate","/runners/fargate","23.runners/2.fargate",{"title":731,"path":732,"stem":733,"icon":241},"EC2 Auto Scaling","/runners/ec2-auto-scaling","23.runners/3.ec2-auto-scaling",{"title":735,"path":736,"stem":737,"icon":241},"EC2 VM","/runners/ec2-vm","23.runners/4.ec2-vm",{"title":287,"path":739,"stem":740,"icon":290},"/runners/kubernetes","23.runners/5.kubernetes",{"title":742,"path":743,"stem":744,"icon":280},"Azure Container Apps","/runners/azure-container-apps","23.runners/6.azure-container-apps",{"title":746,"path":747,"stem":748,"icon":280},"Azure VMSS","/runners/azure-vmss","23.runners/7.azure-vmss",{"title":750,"path":751,"stem":752,"icon":280},"Azure VM","/runners/azure-vm","23.runners/8.azure-vm",{"title":754,"path":755,"stem":756,"icon":275},"GCE","/runners/gce","23.runners/9.gce",{"title":758,"path":759,"stem":760,"children":761,"icon":763},"Chat","/chat","24.chat/01.index",[762,764,768,773,777,782,787,791,796,800,805,810,814,819,824,828,832,836,840,845],{"title":758,"path":759,"stem":760,"icon":763},"i-lucide-messages-square",{"title":765,"path":766,"stem":767,"icon":446},"Enable and publish","/chat/enable-and-publish","24.chat/02.enable-and-publish",{"title":769,"path":770,"stem":771,"icon":772},"Theme and customization","/chat/theme-and-customization","24.chat/03.theme-and-customization","i-lucide-palette",{"title":774,"path":775,"stem":776,"icon":85},"Members and moderation","/chat/members-and-moderation","24.chat/04.members-and-moderation",{"title":778,"path":779,"stem":780,"icon":781},"Channels","/chat/channels","24.chat/05.channels","i-lucide-hash",{"title":783,"path":784,"stem":785,"icon":786},"Using the chat","/chat/using-the-chat","24.chat/06.using-the-chat","i-lucide-message-circle",{"title":788,"path":789,"stem":790,"icon":44},"Actors in chat","/chat/actors-in-chat","24.chat/07.actors-in-chat",{"title":792,"path":793,"stem":794,"icon":795},"Internal support actor","/chat/internal-support-actor","24.chat/08.internal-support-actor","i-lucide-life-buoy",{"title":797,"path":798,"stem":799,"icon":104},"API and console","/chat/api-and-console","24.chat/09.api-and-console",{"title":801,"path":802,"stem":803,"icon":804},"Limits","/chat/limits","24.chat/10.limits","i-lucide-triangle-alert",{"title":806,"path":807,"stem":808,"icon":809},"Structured chat with DGI","/chat/structured-chat","24.chat/11.structured-chat","i-lucide-layout-list",{"title":811,"path":812,"stem":813,"icon":109},"Option A: hosted chat with DGI","/chat/option-a-hosted-chat","24.chat/12.option-a-hosted-chat",{"title":815,"path":816,"stem":817,"icon":818},"Option B: embed the chat component","/chat/option-b-embed-component","24.chat/13.option-b-embed-component","i-lucide-component",{"title":820,"path":821,"stem":822,"icon":823},"Option C: custom client (wire contract)","/chat/option-c-custom-client","24.chat/14.option-c-custom-client","i-lucide-braces",{"title":825,"path":826,"stem":827,"icon":394},"Responder configuration reference","/chat/responder-reference","24.chat/15.responder-reference",{"title":829,"path":830,"stem":831,"icon":547},"Cards, live updates and proactive posts","/chat/cards-live-and-proactive","24.chat/16.cards-live-and-proactive",{"title":833,"path":834,"stem":835,"icon":16},"Structured chat security model","/chat/structured-chat-security","24.chat/17.structured-chat-security",{"title":837,"path":838,"stem":839,"icon":181},"Option D: any app or API (dgi.chat)","/chat/option-d-chat-api","24.chat/18.option-d-chat-api",{"title":841,"path":842,"stem":843,"icon":844},"Card catalog","/chat/card-catalog","24.chat/19.card-catalog","i-lucide-layout-grid",{"title":846,"path":847,"stem":848,"icon":849},"Living Surfaces","/chat/living-surfaces","24.chat/20.living-surfaces","i-lucide-sprout",{"title":851,"path":852,"stem":853,"children":854,"icon":61},"DGI","/dgi","25.dgi/1.index",[855,857,862,866,870,874],{"title":856,"path":852,"stem":853,"icon":61},"What is DGI",{"title":858,"path":859,"stem":860,"icon":861},"How DGI works","/dgi/how-it-works","25.dgi/2.how-it-works","i-lucide-cog",{"title":863,"path":864,"stem":865,"icon":844},"Interfaces","/dgi/interfaces","25.dgi/3.interfaces",{"title":867,"path":868,"stem":869,"icon":29},"Quickstart","/dgi/quickstart","25.dgi/4.quickstart",{"title":871,"path":872,"stem":873,"icon":16},"Trust and safety","/dgi/trust-and-safety","25.dgi/5.trust-and-safety",{"title":875,"path":876,"stem":877,"icon":878},"FAQ","/dgi/faq","25.dgi/6.faq","i-lucide-circle-help",{"id":880,"title":256,"body":881,"description":2065,"extension":2066,"links":2067,"meta":2068,"navigation":2069,"path":257,"seo":2070,"stem":258,"__hash__":2071},"docs/08.aws-connections/5.security-best-practices.md",{"type":882,"value":883,"toc":2036},"minimark",[884,888,893,896,901,909,940,944,951,964,1060,1064,1067,1078,1081,1085,1091,1095,1098,1121,1125,1132,1134,1138,1141,1145,1167,1172,1180,1186,1190,1201,1205,1211,1224,1228,1241,1245,1251,1256,1260,1272,1276,1282,1290,1292,1296,1357,1359,1363,1367,1373,1385,1389,1403,1405,1409,1526,1528,1532,1535,1964,1970,1972,1976,1980,1990,1994,1997,2008,2010,2014,2032],[885,886,887],"p",{},"Learn about AWS connection security features and how to follow the principle of least privilege.",[889,890,892],"h2",{"id":891},"how-we-ensure-security","How We Ensure Security",[885,894,895],{},"Orkestia uses industry best practices to secure AWS connections.",[897,898,900],"h3",{"id":899},"cross-account-iam-roles","Cross-Account IAM Roles",[885,902,903,904,908],{},"Instead of storing AWS access keys, Orkestia uses ",[905,906,907],"strong",{},"cross-account IAM roles",":",[910,911,912,920,927,933],"card-group",{},[913,914,917],"card",{"icon":915,"title":916},"i-lucide-shield-off","No Credentials Stored",[885,918,919],{},"We never store your AWS access keys.",[913,921,924],{"icon":922,"title":923},"i-lucide-clock","Temporary Access",[885,925,926],{},"Each session uses short-lived STS credentials.",[913,928,930],{"icon":446,"title":929},"You Control Access",[885,931,932],{},"Delete the IAM role to immediately revoke access.",[913,934,937],{"icon":935,"title":936},"i-lucide-scroll-text","Full Audit Trail",[885,938,939],{},"All actions appear in AWS CloudTrail.",[897,941,943],{"id":942},"external-id-protection","External ID Protection",[885,945,946,947,950],{},"The ",[905,948,949],{},"External ID"," in your trust policy prevents \"confused deputy\" attacks:",[952,953,954,958,961],"ul",{},[955,956,957],"li",{},"Unique to your organization",[955,959,960],{},"Required for all AssumeRole calls",[955,962,963],{},"Ensures only Orkestia (acting on your behalf) can use the role",[965,966,972],"pre",{"className":967,"code":968,"filename":969,"language":970,"meta":971,"style":971},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"Condition\": {\n    \"StringEquals\": {\n      \"sts:ExternalId\": \"lt_42_a1b2c3d4e5f6789012345678901234567\"\n    }\n  }\n}\n","trust-policy.json","json","",[973,974,975,984,1002,1018,1042,1048,1054],"code",{"__ignoreMap":971},[976,977,980],"span",{"class":978,"line":979},"line",1,[976,981,983],{"class":982},"sMK4o","{\n",[976,985,987,990,994,997,999],{"class":978,"line":986},2,[976,988,989],{"class":982},"  \"",[976,991,993],{"class":992},"spNyl","Condition",[976,995,996],{"class":982},"\"",[976,998,908],{"class":982},[976,1000,1001],{"class":982}," {\n",[976,1003,1005,1008,1012,1014,1016],{"class":978,"line":1004},3,[976,1006,1007],{"class":982},"    \"",[976,1009,1011],{"class":1010},"sBMFI","StringEquals",[976,1013,996],{"class":982},[976,1015,908],{"class":982},[976,1017,1001],{"class":982},[976,1019,1021,1024,1028,1030,1032,1035,1039],{"class":978,"line":1020},4,[976,1022,1023],{"class":982},"      \"",[976,1025,1027],{"class":1026},"sbssI","sts:ExternalId",[976,1029,996],{"class":982},[976,1031,908],{"class":982},[976,1033,1034],{"class":982}," \"",[976,1036,1038],{"class":1037},"sfazB","lt_42_a1b2c3d4e5f6789012345678901234567",[976,1040,1041],{"class":982},"\"\n",[976,1043,1045],{"class":978,"line":1044},5,[976,1046,1047],{"class":982},"    }\n",[976,1049,1051],{"class":978,"line":1050},6,[976,1052,1053],{"class":982},"  }\n",[976,1055,1057],{"class":978,"line":1056},7,[976,1058,1059],{"class":982},"}\n",[897,1061,1063],{"id":1062},"periodic-validation","Periodic Validation",[885,1065,1066],{},"Orkestia periodically validates connections to ensure:",[952,1068,1069,1072,1075],{},[955,1070,1071],{},"The IAM role still exists",[955,1073,1074],{},"Required permissions are present",[955,1076,1077],{},"No unauthorized changes were made",[1079,1080],"hr",{},[889,1082,1084],{"id":1083},"understanding-least-privilege","Understanding Least Privilege",[885,1086,946,1087,1090],{},[905,1088,1089],{},"principle of least privilege"," means granting only the minimum permissions necessary for a task.",[897,1092,1094],{"id":1093},"why-it-matters","Why It Matters",[885,1096,1097],{},"Overly permissive IAM policies:",[952,1099,1100,1109,1115],{},[955,1101,1102,1108],{},[1103,1104],"icon",{"className":1105,"name":1107},[1106],"text-amber-500","i-lucide-alert-triangle"," Increase blast radius if credentials are compromised",[955,1110,1111,1114],{},[1103,1112],{"className":1113,"name":1107},[1106]," Violate compliance requirements (SOC 2, ISO 27001, etc.)",[955,1116,1117,1120],{},[1103,1118],{"className":1119,"name":1107},[1106]," Can lead to accidental resource modification or deletion",[897,1122,1124],{"id":1123},"least-privilege-analysis","Least Privilege Analysis",[885,1126,1127,1128,1131],{},"When you validate a connection, Orkestia analyzes the IAM role for security issues and displays them in the ",[905,1129,1130],{},"Security Recommendations"," panel.",[1079,1133],{},[889,1135,1137],{"id":1136},"issue-types","Issue Types",[885,1139,1140],{},"Orkestia detects four types of least privilege issues:",[897,1142,1144],{"id":1143},"overly-permissive-managed-policy","Overly Permissive Managed Policy",[1146,1147,1150,1156],"callout",{"color":1148,"icon":1149},"red","i-lucide-alert-circle",[885,1151,1152,1155],{},[905,1153,1154],{},"Severity",": High",[885,1157,1158,1159,1162,1163,1166],{},"AWS managed policies like ",[973,1160,1161],{},"AdministratorAccess"," or ",[973,1164,1165],{},"PowerUserAccess"," grant far more permissions than Orkestia needs.",[885,1168,1169,908],{},[905,1170,1171],{},"Example",[965,1173,1178],{"className":1174,"code":1176,"language":1177},[1175],"language-text","Policy: AdministratorAccess\nIssue: Grants full access to all AWS services\n","text",[973,1179,1176],{"__ignoreMap":971},[885,1181,1182,1185],{},[905,1183,1184],{},"Recommendation",": Replace with a custom policy containing only required permissions.",[897,1187,1189],{"id":1188},"overly-permissive-action","Overly Permissive Action",[1146,1191,1193,1198],{"color":1192,"icon":1107},"amber",[885,1194,1195,1197],{},[905,1196,1154],{},": Medium",[885,1199,1200],{},"The policy grants more specific actions than necessary.",[885,1202,1203,908],{},[905,1204,1171],{},[965,1206,1209],{"className":1207,"code":1208,"language":1177},[1175],"Action: s3:*\nIssue: Grants all S3 operations when only specific ones are needed\n",[973,1210,1208],{"__ignoreMap":971},[885,1212,1213,1215,1216,1219,1220,1223],{},[905,1214,1184],{},": Replace with specific actions like ",[973,1217,1218],{},"s3:GetObject",", ",[973,1221,1222],{},"s3:PutObject",".",[897,1225,1227],{"id":1226},"wildcard-action","Wildcard Action",[1146,1229,1230,1234],{"color":1148,"icon":1149},[885,1231,1232,1155],{},[905,1233,1154],{},[885,1235,1236,1237,1240],{},"Using ",[973,1238,1239],{},"*"," in actions grants access to ALL operations for a service.",[885,1242,1243,908],{},[905,1244,1171],{},[965,1246,1249],{"className":1247,"code":1248,"language":1177},[1175],"Action: ec2:*\nIssue: Grants all EC2 operations\n",[973,1250,1248],{"__ignoreMap":971},[885,1252,1253,1255],{},[905,1254,1184],{},": Specify only the exact actions required.",[897,1257,1259],{"id":1258},"wildcard-resource","Wildcard Resource",[1146,1261,1262,1267],{"color":1192,"icon":1107},[885,1263,1264,1266],{},[905,1265,1154],{},": Medium to High",[885,1268,1236,1269,1271],{},[973,1270,1239],{}," for resources grants access to ALL resources in your account.",[885,1273,1274,908],{},[905,1275,1171],{},[965,1277,1280],{"className":1278,"code":1279,"language":1177},[1175],"Resource: *\nIssue: Applies to all resources instead of specific buckets/distributions\n",[973,1281,1279],{"__ignoreMap":971},[885,1283,1284,1286,1287,1223],{},[905,1285,1184],{},": Scope to specific resources using ARN patterns like ",[973,1288,1289],{},"arn:aws:s3:::ltinteg-*",[1079,1291],{},[889,1293,1295],{"id":1294},"severity-levels","Severity Levels",[1297,1298,1299,1314],"table",{},[1300,1301,1302],"thead",{},[1303,1304,1305,1308,1311],"tr",{},[1306,1307,1154],"th",{},[1306,1309,1310],{},"Color",[1306,1312,1313],{},"Description",[1315,1316,1317,1331,1344],"tbody",{},[1303,1318,1319,1325,1328],{},[1320,1321,1322],"td",{},[905,1323,1324],{},"High",[1320,1326,1327],{},"Red",[1320,1329,1330],{},"Critical security issue, should be fixed immediately",[1303,1332,1333,1338,1341],{},[1320,1334,1335],{},[905,1336,1337],{},"Medium",[1320,1339,1340],{},"Amber",[1320,1342,1343],{},"Important issue, fix when possible",[1303,1345,1346,1351,1354],{},[1320,1347,1348],{},[905,1349,1350],{},"Low",[1320,1352,1353],{},"Blue",[1320,1355,1356],{},"Minor improvement, optional",[1079,1358],{},[889,1360,1362],{"id":1361},"viewing-security-issues","Viewing Security Issues",[897,1364,1366],{"id":1365},"from-the-connection-card","From the Connection Card",[885,1368,1369,1370,1372],{},"If a connection has security issues, you'll see a ",[905,1371,1130],{}," banner:",[1374,1375,1376,1379,1382],"ol",{},[955,1377,1378],{},"Click the banner to open the panel",[955,1380,1381],{},"Review issues grouped by policy",[955,1383,1384],{},"Follow recommendations to fix",[897,1386,1388],{"id":1387},"from-connection-details","From Connection Details",[1374,1390,1391,1394,1400],{},[955,1392,1393],{},"Open the connection details panel",[955,1395,1396,1397,1399],{},"Click ",[905,1398,1130],{}," at the bottom",[955,1401,1402],{},"Review and address issues",[1079,1404],{},[889,1406,1408],{"id":1407},"fixing-least-privilege-issues","Fixing Least Privilege Issues",[1410,1411,1413,1417,1424,1445,1449,1464,1468,1473,1487,1492,1508,1512],"steps",{"level":1412},"3",[897,1414,1416],{"id":1415},"open-aws-iam-console","Open AWS IAM Console",[885,1418,1419,1420,1423],{},"Click the ",[905,1421,1422],{},"Open in AWS Console"," button in the panel, or:",[1374,1425,1426,1436,1442],{},[955,1427,1428,1429],{},"Go to ",[1430,1431,1435],"a",{"href":1432,"rel":1433},"https://console.aws.amazon.com/iam/",[1434],"nofollow","AWS IAM Console",[955,1437,1438,1439],{},"Navigate to ",[905,1440,1441],{},"Roles",[955,1443,1444],{},"Find your Orkestia role (shown at the top of the panel)",[897,1446,1448],{"id":1447},"review-attached-policies","Review Attached Policies",[1374,1450,1451,1454,1461],{},[955,1452,1453],{},"Click the role name",[955,1455,1456,1457,1460],{},"View the ",[905,1458,1459],{},"Permissions"," tab",[955,1462,1463],{},"Identify the policies with issues",[897,1465,1467],{"id":1466},"fix-the-issues","Fix the Issues",[885,1469,1470,908],{},[905,1471,1472],{},"For managed policies (like AdministratorAccess)",[1374,1474,1475,1481,1484],{},[955,1476,1396,1477,1480],{},[905,1478,1479],{},"Remove"," next to the policy",[955,1482,1483],{},"Create a new inline policy with only required permissions",[955,1485,1486],{},"Use the policy from the Orkestia setup wizard",[885,1488,1489,908],{},[905,1490,1491],{},"For custom/inline policies",[1374,1493,1494,1497,1502,1505],{},[955,1495,1496],{},"Click the policy name",[955,1498,1396,1499],{},[905,1500,1501],{},"Edit",[955,1503,1504],{},"Replace overly permissive actions with specific ones",[955,1506,1507],{},"Scope resources to specific ARN patterns",[897,1509,1511],{"id":1510},"re-validate","Re-validate",[1374,1513,1514,1517,1523],{},[955,1515,1516],{},"Return to Orkestia",[955,1518,1396,1519,1522],{},[905,1520,1521],{},"Validate"," on the connection",[955,1524,1525],{},"Verify issues are resolved",[1079,1527],{},[889,1529,1531],{"id":1530},"recommended-policy","Recommended Policy",[885,1533,1534],{},"Use this policy template for minimum required permissions:",[1536,1537,1538],"code-collapse",{},[965,1539,1542],{"className":967,"code":1540,"filename":1541,"language":970,"meta":971,"style":971},"{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Sid\": \"S3Management\",\n      \"Effect\": \"Allow\",\n      \"Action\": [\n        \"s3:CreateBucket\",\n        \"s3:DeleteBucket\",\n        \"s3:ListBucket\",\n        \"s3:GetObject\",\n        \"s3:PutObject\",\n        \"s3:DeleteObject\",\n        \"s3:GetBucketPolicy\",\n        \"s3:PutBucketPolicy\",\n        \"s3:GetBucketWebsite\",\n        \"s3:PutBucketWebsite\"\n      ],\n      \"Resource\": [\n        \"arn:aws:s3:::ltinteg-*\",\n        \"arn:aws:s3:::ltinteg-*/*\"\n      ]\n    },\n    {\n      \"Sid\": \"CloudFrontManagement\",\n      \"Effect\": \"Allow\",\n      \"Action\": [\n        \"cloudfront:CreateDistribution\",\n        \"cloudfront:GetDistribution\",\n        \"cloudfront:UpdateDistribution\",\n        \"cloudfront:DeleteDistribution\",\n        \"cloudfront:CreateInvalidation\"\n      ],\n      \"Resource\": \"*\"\n    }\n  ]\n}\n","minimum-policy.json",[973,1543,1544,1548,1569,1583,1588,1608,1628,1641,1654,1666,1678,1689,1700,1712,1724,1736,1748,1758,1764,1778,1789,1799,1805,1811,1816,1836,1855,1868,1880,1892,1904,1916,1926,1931,1948,1953,1959],{"__ignoreMap":971},[976,1545,1546],{"class":978,"line":979},[976,1547,983],{"class":982},[976,1549,1550,1552,1555,1557,1559,1561,1564,1566],{"class":978,"line":986},[976,1551,989],{"class":982},[976,1553,1554],{"class":992},"Version",[976,1556,996],{"class":982},[976,1558,908],{"class":982},[976,1560,1034],{"class":982},[976,1562,1563],{"class":1037},"2012-10-17",[976,1565,996],{"class":982},[976,1567,1568],{"class":982},",\n",[976,1570,1571,1573,1576,1578,1580],{"class":978,"line":1004},[976,1572,989],{"class":982},[976,1574,1575],{"class":992},"Statement",[976,1577,996],{"class":982},[976,1579,908],{"class":982},[976,1581,1582],{"class":982}," [\n",[976,1584,1585],{"class":978,"line":1020},[976,1586,1587],{"class":982},"    {\n",[976,1589,1590,1592,1595,1597,1599,1601,1604,1606],{"class":978,"line":1044},[976,1591,1023],{"class":982},[976,1593,1594],{"class":1010},"Sid",[976,1596,996],{"class":982},[976,1598,908],{"class":982},[976,1600,1034],{"class":982},[976,1602,1603],{"class":1037},"S3Management",[976,1605,996],{"class":982},[976,1607,1568],{"class":982},[976,1609,1610,1612,1615,1617,1619,1621,1624,1626],{"class":978,"line":1050},[976,1611,1023],{"class":982},[976,1613,1614],{"class":1010},"Effect",[976,1616,996],{"class":982},[976,1618,908],{"class":982},[976,1620,1034],{"class":982},[976,1622,1623],{"class":1037},"Allow",[976,1625,996],{"class":982},[976,1627,1568],{"class":982},[976,1629,1630,1632,1635,1637,1639],{"class":978,"line":1056},[976,1631,1023],{"class":982},[976,1633,1634],{"class":1010},"Action",[976,1636,996],{"class":982},[976,1638,908],{"class":982},[976,1640,1582],{"class":982},[976,1642,1644,1647,1650,1652],{"class":978,"line":1643},8,[976,1645,1646],{"class":982},"        \"",[976,1648,1649],{"class":1037},"s3:CreateBucket",[976,1651,996],{"class":982},[976,1653,1568],{"class":982},[976,1655,1657,1659,1662,1664],{"class":978,"line":1656},9,[976,1658,1646],{"class":982},[976,1660,1661],{"class":1037},"s3:DeleteBucket",[976,1663,996],{"class":982},[976,1665,1568],{"class":982},[976,1667,1669,1671,1674,1676],{"class":978,"line":1668},10,[976,1670,1646],{"class":982},[976,1672,1673],{"class":1037},"s3:ListBucket",[976,1675,996],{"class":982},[976,1677,1568],{"class":982},[976,1679,1681,1683,1685,1687],{"class":978,"line":1680},11,[976,1682,1646],{"class":982},[976,1684,1218],{"class":1037},[976,1686,996],{"class":982},[976,1688,1568],{"class":982},[976,1690,1692,1694,1696,1698],{"class":978,"line":1691},12,[976,1693,1646],{"class":982},[976,1695,1222],{"class":1037},[976,1697,996],{"class":982},[976,1699,1568],{"class":982},[976,1701,1703,1705,1708,1710],{"class":978,"line":1702},13,[976,1704,1646],{"class":982},[976,1706,1707],{"class":1037},"s3:DeleteObject",[976,1709,996],{"class":982},[976,1711,1568],{"class":982},[976,1713,1715,1717,1720,1722],{"class":978,"line":1714},14,[976,1716,1646],{"class":982},[976,1718,1719],{"class":1037},"s3:GetBucketPolicy",[976,1721,996],{"class":982},[976,1723,1568],{"class":982},[976,1725,1727,1729,1732,1734],{"class":978,"line":1726},15,[976,1728,1646],{"class":982},[976,1730,1731],{"class":1037},"s3:PutBucketPolicy",[976,1733,996],{"class":982},[976,1735,1568],{"class":982},[976,1737,1739,1741,1744,1746],{"class":978,"line":1738},16,[976,1740,1646],{"class":982},[976,1742,1743],{"class":1037},"s3:GetBucketWebsite",[976,1745,996],{"class":982},[976,1747,1568],{"class":982},[976,1749,1751,1753,1756],{"class":978,"line":1750},17,[976,1752,1646],{"class":982},[976,1754,1755],{"class":1037},"s3:PutBucketWebsite",[976,1757,1041],{"class":982},[976,1759,1761],{"class":978,"line":1760},18,[976,1762,1763],{"class":982},"      ],\n",[976,1765,1767,1769,1772,1774,1776],{"class":978,"line":1766},19,[976,1768,1023],{"class":982},[976,1770,1771],{"class":1010},"Resource",[976,1773,996],{"class":982},[976,1775,908],{"class":982},[976,1777,1582],{"class":982},[976,1779,1781,1783,1785,1787],{"class":978,"line":1780},20,[976,1782,1646],{"class":982},[976,1784,1289],{"class":1037},[976,1786,996],{"class":982},[976,1788,1568],{"class":982},[976,1790,1792,1794,1797],{"class":978,"line":1791},21,[976,1793,1646],{"class":982},[976,1795,1796],{"class":1037},"arn:aws:s3:::ltinteg-*/*",[976,1798,1041],{"class":982},[976,1800,1802],{"class":978,"line":1801},22,[976,1803,1804],{"class":982},"      ]\n",[976,1806,1808],{"class":978,"line":1807},23,[976,1809,1810],{"class":982},"    },\n",[976,1812,1814],{"class":978,"line":1813},24,[976,1815,1587],{"class":982},[976,1817,1819,1821,1823,1825,1827,1829,1832,1834],{"class":978,"line":1818},25,[976,1820,1023],{"class":982},[976,1822,1594],{"class":1010},[976,1824,996],{"class":982},[976,1826,908],{"class":982},[976,1828,1034],{"class":982},[976,1830,1831],{"class":1037},"CloudFrontManagement",[976,1833,996],{"class":982},[976,1835,1568],{"class":982},[976,1837,1839,1841,1843,1845,1847,1849,1851,1853],{"class":978,"line":1838},26,[976,1840,1023],{"class":982},[976,1842,1614],{"class":1010},[976,1844,996],{"class":982},[976,1846,908],{"class":982},[976,1848,1034],{"class":982},[976,1850,1623],{"class":1037},[976,1852,996],{"class":982},[976,1854,1568],{"class":982},[976,1856,1858,1860,1862,1864,1866],{"class":978,"line":1857},27,[976,1859,1023],{"class":982},[976,1861,1634],{"class":1010},[976,1863,996],{"class":982},[976,1865,908],{"class":982},[976,1867,1582],{"class":982},[976,1869,1871,1873,1876,1878],{"class":978,"line":1870},28,[976,1872,1646],{"class":982},[976,1874,1875],{"class":1037},"cloudfront:CreateDistribution",[976,1877,996],{"class":982},[976,1879,1568],{"class":982},[976,1881,1883,1885,1888,1890],{"class":978,"line":1882},29,[976,1884,1646],{"class":982},[976,1886,1887],{"class":1037},"cloudfront:GetDistribution",[976,1889,996],{"class":982},[976,1891,1568],{"class":982},[976,1893,1895,1897,1900,1902],{"class":978,"line":1894},30,[976,1896,1646],{"class":982},[976,1898,1899],{"class":1037},"cloudfront:UpdateDistribution",[976,1901,996],{"class":982},[976,1903,1568],{"class":982},[976,1905,1907,1909,1912,1914],{"class":978,"line":1906},31,[976,1908,1646],{"class":982},[976,1910,1911],{"class":1037},"cloudfront:DeleteDistribution",[976,1913,996],{"class":982},[976,1915,1568],{"class":982},[976,1917,1919,1921,1924],{"class":978,"line":1918},32,[976,1920,1646],{"class":982},[976,1922,1923],{"class":1037},"cloudfront:CreateInvalidation",[976,1925,1041],{"class":982},[976,1927,1929],{"class":978,"line":1928},33,[976,1930,1763],{"class":982},[976,1932,1934,1936,1938,1940,1942,1944,1946],{"class":978,"line":1933},34,[976,1935,1023],{"class":982},[976,1937,1771],{"class":1010},[976,1939,996],{"class":982},[976,1941,908],{"class":982},[976,1943,1034],{"class":982},[976,1945,1239],{"class":1037},[976,1947,1041],{"class":982},[976,1949,1951],{"class":978,"line":1950},35,[976,1952,1047],{"class":982},[976,1954,1956],{"class":978,"line":1955},36,[976,1957,1958],{"class":982},"  ]\n",[976,1960,1962],{"class":978,"line":1961},37,[976,1963,1059],{"class":982},[1965,1966,1967],"tip",{},[885,1968,1969],{},"Always use the policy from the Orkestia wizard for the most up-to-date permissions.",[1079,1971],{},[889,1973,1975],{"id":1974},"important-notes","Important Notes",[897,1977,1979],{"id":1978},"security-issues-dont-break-functionality","Security Issues Don't Break Functionality",[1981,1982,1983],"note",{},[885,1984,1985,1986,1989],{},"Connections with least privilege issues will still work. These are ",[905,1987,1988],{},"recommendations"," to improve your security posture.",[897,1991,1993],{"id":1992},"regular-reviews","Regular Reviews",[885,1995,1996],{},"We recommend reviewing your IAM policies:",[952,1998,1999,2002,2005],{},[955,2000,2001],{},"After initial setup",[955,2003,2004],{},"When adding new features",[955,2006,2007],{},"Quarterly as part of security audits",[1079,2009],{},[889,2011,2013],{"id":2012},"next-steps","Next Steps",[910,2015,2016,2021,2026],{},[913,2017,2018],{"icon":229,"title":261,"to":262},[885,2019,2020],{},"Fix common connection issues.",[913,2022,2023],{"icon":254,"title":251,"to":252},[885,2024,2025],{},"View and validate connections.",[913,2027,2029],{"icon":16,"title":2028,"to":139},"Audit & Security",[885,2030,2031],{},"Platform-wide audit trail and security posture.",[2033,2034,2035],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":971,"searchDepth":979,"depth":986,"links":2037},[2038,2043,2047,2053,2054,2058,2059,2060,2064],{"id":891,"depth":986,"text":892,"children":2039},[2040,2041,2042],{"id":899,"depth":1004,"text":900},{"id":942,"depth":1004,"text":943},{"id":1062,"depth":1004,"text":1063},{"id":1083,"depth":986,"text":1084,"children":2044},[2045,2046],{"id":1093,"depth":1004,"text":1094},{"id":1123,"depth":1004,"text":1124},{"id":1136,"depth":986,"text":1137,"children":2048},[2049,2050,2051,2052],{"id":1143,"depth":1004,"text":1144},{"id":1188,"depth":1004,"text":1189},{"id":1226,"depth":1004,"text":1227},{"id":1258,"depth":1004,"text":1259},{"id":1294,"depth":986,"text":1295},{"id":1361,"depth":986,"text":1362,"children":2055},[2056,2057],{"id":1365,"depth":1004,"text":1366},{"id":1387,"depth":1004,"text":1388},{"id":1407,"depth":986,"text":1408},{"id":1530,"depth":986,"text":1531},{"id":1974,"depth":986,"text":1975,"children":2061},[2062,2063],{"id":1978,"depth":1004,"text":1979},{"id":1992,"depth":1004,"text":1993},{"id":2012,"depth":986,"text":2013},"AWS connection security features and least privilege recommendations.","md",null,{},{"icon":259},{"title":256,"description":2065},"gavqc1J_x-FGegwQQug-tEkCKVc6xyvYXPb0UnQ6GIY",[2073,2075],{"title":251,"path":252,"stem":253,"description":2074,"icon":254,"children":-1},"View, filter, validate, and delete your AWS connections.",{"title":261,"path":262,"stem":263,"description":2076,"icon":229,"children":-1},"Solutions for common AWS connection issues.",1790354046882]