OT

ory/terraform-provider-ory

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

21 stars 质量 60 趋势 30Apache-2.0

Terraform 提供管理 Ory 网络资源的服务——包括身份、OAuth2 客户端、权限、组织、项目等。

概览

感谢Jason Hernandez和Materialize团队创建了该服务提供者的初始版本!另见 NOTICE.md 一个用于管理 Ory 网络资源的 Terraform 提供商,使用基础设施即代码。 :该提供商仅适用于(托管的SaaS产品)。它不支持自托管的Ory部署。 ory_project_config资源中的许多属性已重命名以遵循 OpenAPI 规范命名规范。旧名称仍然有效,但在 Terraform 输出中会显示弃用警告,并将在未来的主要版本中被移除。运行 ./scripts/migrate-deprecated-attrs.sh 查看完整的重命名列表。 要自动迁移你的.tf文件,请运行提供的迁移脚本: 脚本会为每个修改的文件创建.bak备份。迁移后,运行 terraform 计划以确认检测到无更改。 有关重命名属性的完整列表,请参见project_config资源文档。 - Terraform >= 1.0 - Go(参见Go中的版本)。

概述(AI 翻译)

特别感谢 感谢Jason Hernandez和Materialize团队创建了该服务提供者的初始版本!另见 NOTICE.md

一个用于管理 Ory 网络资源的 Terraform 提供商,使用基础设施即代码。

注:本提供商仅支持 Ory Network(托管型 SaaS 产品)。不支持自托管的 Ory 部署。

通知 - 所有剩余的弃用属性将在[[T0]上被清理。

迁移中弃用 ory_project_config 属性

ory_project_config 资源中的许多属性已重命名以遵循 OpenAPI 规范命名规范。旧名称仍然有效,但在 Terraform 输出中会显示弃用警告,并将在未来的主要版本中被移除。运行 ./scripts/migrate-deprecated-attrs.sh 查看完整的重命名列表。

重命名属性示例:

旧名 新名
enable_password selfservice_methods_password_enabled
login_ui_url selfservice_flows_login_ui_url
oauth2_access_token_lifespan oauth2_ttl_access_token
password_min_length selfservice_methods_password_config_min_password_length

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

Terraform Provider for Ory Network

Special Thanks Shoutout to Jason Hernandez and the Materialize team for creating the initial version of this provider! Also see NOTICE.md

A Terraform provider for managing Ory Network resources using infrastructure-as-code.

Note: This provider is for Ory Network (the managed SaaS offering) only. It does not support self-hosted Ory deployments.

Requirements

Installation

terraform {
  required_providers {
    ory = {
      source = "ory/ory"
    }
  }
}

Authentication

Ory Network uses two types of API keys:

Key Type Prefix Purpose
Workspace API Key ory_wak_... Projects, organizations, workspace management
Project API Key ory_pat_... Identities, OAuth2 clients, relationships
export ORY_WORKSPACE_API_KEY="ory_wak_..."
export ORY_PROJECT_API_KEY="ory_pat_..."
export ORY_PROJECT_ID="your-project-uuid"
export ORY_PROJECT_SLUG="your-project-slug"

Or configure directly in the provider block:

provider "ory" {
  workspace_api_key = var.ory_workspace_key  # or ORY_WORKSPACE_API_KEY env var
  project_api_key   = var.ory_project_key    # or ORY_PROJECT_API_KEY env var
  project_id        = var.ory_project_id     # or ORY_PROJECT_ID env var
  project_slug      = var.ory_project_slug   # or ORY_PROJECT_SLUG env var
}

Quick Start

terraform {
  required_providers {
    ory = {
      source = "ory/ory"
    }
  }
}

provider "ory" {}

# Configure project settings
resource "ory_project_config" "main" {
  cors_enabled                                            = true
  cors_origins                                            = ["https://app.example.com"]
  selfservice_methods_password_config_min_password_length = 10
  session_lifespan                                        = "720h0m0s" # 30 days
}

# Add Google social login
resource "ory_social_provider" "google" {
  provider_id   = "google"
  provider_type = "google"
  client_id     = var.google_client_id
  client_secret = var.google_client_secret
  scope         = ["email", "profile"]
}

# Create a webhook for new registrations
resource "ory_action" "welcome_email" {
  flow        = "registration"
  timing      = "after"
在 GitHub 查看完整 README

推荐工具

换一个关键词,或者移除筛选条件。

安装

npx skillfish add ory/terraform-provider-ory
新手?先看 mcpskill.org 教程 →