All Projects → hashicorp → Terraform Provider Azuread

hashicorp / Terraform Provider Azuread

Licence: mpl-2.0
Terraform provider for Azure Active Directory

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Terraform Provider Azuread

Terraform Provider Azurerm
Terraform provider for Azure Resource Manager
Stars: ✭ 3,007 (+1589.33%)
Mutual labels:  azure, terraform, terraform-provider
Terraform Provider Databricks
Databricks Terraform Provider
Stars: ✭ 119 (-33.15%)
Mutual labels:  azure, terraform, terraform-provider
Hybrid multicloud overlay
MutiCloud_Overlay demonstrates a use case of overlay over one or more clouds such as AWS, Azure, GCP, OCI, Alibaba and a vSphere private infrastructure in Hub and spoke topology, point to point topology and in a Single cloud. Overlay protocols IPv6 and IPv4 are independent of underlying infrastructure. This solution can be integrated with encryption and additional security features.
Stars: ✭ 127 (-28.65%)
Mutual labels:  azure, terraform
Terraform Provider Rancher2
Terraform Rancher2 provider
Stars: ✭ 129 (-27.53%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Kubectl
Terraform provider to handle raw kubernetes manifest yaml files
Stars: ✭ 174 (-2.25%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Grafana
Terraform Grafana provider
Stars: ✭ 118 (-33.71%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Google Beta
Terraform Google Cloud Platform Beta provider
Stars: ✭ 123 (-30.9%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Lxd
LXD Resource provider for Terraform
Stars: ✭ 164 (-7.87%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Okta
🎉 Now an official Terraform provider! 🚚 We've moved to https://github.com/terraform-providers/terraform-provider-okta/
Stars: ✭ 111 (-37.64%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Vultr
Terraform Vultr Provider
Stars: ✭ 172 (-3.37%)
Mutual labels:  terraform, terraform-provider
Kubify
Terraform Template to Setup a Kubernetes Cluster on OpenStack/AWS/Azure
Stars: ✭ 142 (-20.22%)
Mutual labels:  azure, terraform
Terraform Provider Shell
Terraform provider for executing shell commands and saving output to state file
Stars: ✭ 172 (-3.37%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Template
Terraform template provider
Stars: ✭ 119 (-33.15%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Mongodbatlas
Terraform provider for MongoDB Atlas
Stars: ✭ 126 (-29.21%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Zerotier
Create, modify and destroy ZeroTier networks and members through Terraform.
Stars: ✭ 113 (-36.52%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Docker
As part of our introduction to self-service publishing in the Terraform Registry, this copy of the provider has been archived, and ownership has been transferred to active maintainers in the community. Please see the new location on the Terraform Registry: https://registry.terraform.io/providers/kreuzwerker/docker/latest
Stars: ✭ 131 (-26.4%)
Mutual labels:  terraform, terraform-provider
Py Az2tf
Tool to automatically generate Terraform files for your Azure subscription
Stars: ✭ 148 (-16.85%)
Mutual labels:  azure, terraform
Terraform Provider Linode
Terraform Linode provider
Stars: ✭ 105 (-41.01%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Pagerduty
Terraform PagerDuty provider
Stars: ✭ 106 (-40.45%)
Mutual labels:  terraform, terraform-provider
Terraform Provider Scaffolding
Quick start repository for creating a Terraform provider
Stars: ✭ 129 (-27.53%)
Mutual labels:  terraform, terraform-provider

Terraform Provider for Azure Active Directory

NOTE: Version 1.0 and above of this provider requires Terraform 0.12 or later.

Usage Example

# Configure the Azure AD Provider
provider "azuread" {
  version = "~> 1.0.0"

  # NOTE: Environment Variables can also be used for Service Principal authentication
  # Terraform also supports authenticating via the Azure CLI too.
  # see here for more info: https://terraform.io/docs/providers/azuread/

  # client_id     = "..."
  # client_secret = "..."
  # tenant_id     = "..."
}

# Retrieve domain information
data "azuread_domains" "example" {
  only_initial = true
}

# Create an application
resource "azuread_application" "example" {
  name = "ExampleApp"
}

# Create a service principal
resource "azuread_service_principal" "example" {
  application_id = azuread_application.example.application_id
}

# Create a user
resource "azuread_user" "example" {
  user_principal_name = "[email protected]${data.azuread_domains.example.domains.0.domain_name}"
  display_name        = "ExampleUser"
  password            = "..."
}

Further usage documentation is available on the Terraform website.

Developer Requirements

  • Terraform 0.12.x or later
  • Go 1.16.x (to build the provider plugin)

If you're building on Windows, you will also need:

For GNU32 Make, make sure its bin path is added to your PATH environment variable.

For Git Bash for Windows, at the step of "Adjusting your PATH environment", please choose "Use Git and optional Unix tools from Windows Command Prompt".

Developing the Provider

If you wish to work on the provider, you'll first need Go installed on your machine (version 1.16+ is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin to your $PATH.

Clone the repository to: $GOPATH/src/github.com/hashicorp/terraform-provider-azuread

$ mkdir -p $GOPATH/src/github.com/terraform-providers; cd $GOPATH/src/github.com/terraform-providers
$ git clone github.com/hashicorp/terraform-provider-azuread

Change to the clone directory and run make tools to install the dependent tooling needed to test and build the provider.

To compile the provider, run make build. This will build the provider and put the provider binary in the $GOPATH/bin directory.

$ make tools
...
$ make build
...
$ $GOPATH/bin/terraform-provider-azuread
...

In order to test the provider, you can simply run make test.

$ make test

The majority of tests in the provider are Acceptance Tests - which provisions real resources in Azure. It's possible to run the entire acceptance test suite by running make testacc - however it's likely you'll want to run a subset, which you can do using a prefix, by running:

make testacc TESTARGS='-run=TestAccApplication'

The following ENV variables must be set in your shell prior to running acceptance tests:

  • ARM_CLIENT_ID
  • ARM_CLIENT_SECRET
  • ARM_TENANT_ID
  • ARM_TEST_LOCATION
  • ARM_TEST_LOCATION_ALT

NOTE: Acceptance tests create real resources, and may cost money to run.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].