Giter Site home page Giter Site logo

netsec / terraform-oci-iam Goto Github PK

View Code? Open in Web Editor NEW

This project forked from oracle-terraform-modules/terraform-oci-iam

0.0 1.0 0.0 24 KB

Terraform Module for managing Oracle Cloud Infrastructure Identity and Access Management (IAM) resources

License: Other

HCL 100.00%

terraform-oci-iam's Introduction

Oracle Cloud Infrastructure Terraform Modules for Identity and Access Management

This module contains a collection of submodules that simplify the managment of Identity and Access Management (IAM) resources such as compartments, users, groups, and dynamic groups for Oracle Cloud Infrastructure. For more information about IAM, see Overview of IAM.

Prerequisites

See the Oracle Cloud Infrastructure Terraform Provider docs for information about setting up and using the Oracle Cloud Infrastructure Terraform Provider.

How to use this module

This module has the following folder structure:

  • modules: This folder includes submodules for creating IAM resources in Oracle Cloud Infrastructure.
  • example: This folder contains an example of how to use the module.

Usage

The available submodules are listed below.

iam-compartment: See a basic example below and the iam-compartment readme for details.

module "iam_compartment" {
  source                  = "oracle-terraform-modules/iam/oci/modules/iam-compartment"
  tenancy_ocid            = "${var.tenancy_ocid}"
  compartment_name        = "tf_example_compartment"
  compartment_description = "compartment created by terraform"
  compartment_create      = false
}

iam-user: See a basic example below and the iam-user readme for details.

module "iam_user1" {
  source           = "oracle-terraform-modules/iam/oci/modules/iam-user"
  tenancy_ocid     = "${var.tenancy_ocid}"
  user_name        = "[email protected]"
  user_description = "user1 created by terraform"
}

iam-group: See a basic example below and the iam-group readme for details.

module "iam_group" {
  source                = "oracle-terraform-modules/iam/oci/modules/iam-group"
  tenancy_ocid          = "${var.tenancy_ocid}"
  group_name            = "tf_example_group"
  group_description     = "group created by terraform"
  user_count            = 2
  user_ids              = ["${module.iam_user1.user_id}", "${module.iam_user2.user_id}"]
  policy_compartment_id = "${module.iam_compartment.compartment_id}"
  policy_name           = "tf-example-policy"
  policy_description    = "policy created by terraform"
  policy_statements     = ["Allow group tf_example_group to read instances in compartment tf_example_compartment", "Allow group tf_example_group to inspect instances in compartment tf_example_compartment"]
}

iam-dynamic-group: See a basic example below and the iam-dynamic-group readme for details.

module "iam_dynamic_group" {
  source                    = "oracle-terraform-modules/iam/oci/modules/iam-dynamic-group"
  tenancy_ocid              = "${var.tenancy_ocid}"
  dynamic_group_name        = "tf_example_dynamic_group"
  dynamic_group_description = "dynamic group created by terraform"
  dynamic_group_rule        = "instance.compartment.id = '${module.iam_compartment.compartment_id}'"
  policy_compartment_id     = "${module.iam_compartment.compartment_id}"
  policy_name               = "tf-example-dynamic-policy"
  policy_description        = "dynamic policy created by terraform"
  policy_statements         = ["Allow dynamic-group tf_example_dynamic_group to read instances in compartment tf_example_compartment"]
}

Contributing

This project is open source. Oracle appreciates any contributions that are made by the open source community.

License

Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.

Licensed under the Universal Permissive License 1.0 or Apache License 2.0.

See LICENSE for more details.

terraform-oci-iam's People

Contributors

yimw avatar alexng-canuck avatar alexng-modules avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.