Skip to content

Commit

Permalink
v1.9.0: create module ldap-get-attribute
Browse files Browse the repository at this point in the history
  • Loading branch information
badra001 committed Apr 5, 2021
1 parent 544caeb commit 9cc0375
Showing 1 changed file with 90 additions and 0 deletions.
90 changes: 90 additions & 0 deletions ldap-get-attribute/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# aws-inf-setup :: ldap-get-attribute

This allows for a simple LDAP search filter against, by default eDirectory ldap.tco.census.gov.
It returns an object with count, status, the attribute, the dn(s) and the attribute value(s).
DN and values are returned in a list. This is intended to search for only a single attribute,
which may be multi-value. It also returns the DN and CN.

For a query that returns multiple entries, where those entries do all not possess the same
attribute, the DN to attibute value will not match. That is, it returns only a list of
the attributes for the objects which have them in no particular order.

# Usage
Here is a simple example to get the email address of use `badra001`.

```hcl
module "user_badra001" {
source = "git@github.e.it.census.gov:terraform-modules/aws-inf-setup.git//ldap-get-attribute"
filter = "cn=badra001"
attribute = "mail"
# optional
# ldap_uri = "ldaps://ldap.tco.census.gov"
# ldap_base_dn = "o=U.S. Census Bureau,c=US"
# TBD
# ldap_user =
# ldap_pass =
}
```

# Sample Output
```json
search_results = {
"attribute" = "mail"
"attribute_value" = [
"donald.e.badrak.ii@census.gov",
]
"count" = "1"
"dn" = [
"cn=badra001,ou=People,o=U.S. Census Bureau,c=US",
]
"cn" = [
"badra001"
]
"status" = "0"
}
```

## Requirements

No requirements.

## Providers

| Name | Version |
|------|---------|
| <a name="provider_aws"></a> [aws](#provider\_aws) | n/a |
| <a name="provider_external"></a> [external](#provider\_external) | n/a |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [aws_arn.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/arn) | data source |
| [aws_caller_identity.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity) | data source |
| [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source |
| [external_external.search](https://registry.terraform.io/providers/hashicorp/external/latest/docs/data-sources/external) | data source |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_account_alias"></a> [account\_alias](#input\_account\_alias) | AWS Account Alias | `string` | `""` | no |
| <a name="input_account_id"></a> [account\_id](#input\_account\_id) | AWS Account ID (default will pull from current user) | `string` | `""` | no |
| <a name="input_attribute"></a> [attribute](#input\_attribute) | LDAP attibute to return | `string` | `"dn"` | no |
| <a name="input_filter"></a> [filter](#input\_filter) | LDAP search filter | `string` | n/a | yes |
| <a name="input_ldap_base_dn"></a> [ldap\_base\_dn](#input\_ldap\_base\_dn) | LDAP base DN for search | `string` | `"o=U.S. Census Bureau,c=US"` | no |
| <a name="input_ldap_uri"></a> [ldap\_uri](#input\_ldap\_uri) | LDAP URI {scheme}://{hostname}:{port} | `string` | `"ldaps://ldap.tco.census.gov"` | no |
| <a name="input_override_prefixes"></a> [override\_prefixes](#input\_override\_prefixes) | Override built-in prefixes by component (efs, s3, ebs, kms, role, policy, security-group). This should be used primarily for common infrastructure things | `map(string)` | `{}` | no |
| <a name="input_tags"></a> [tags](#input\_tags) | AWS Tags to apply to appropriate resources (S3, KMS). Do not include safeguard tags here, use the data\_safeguard field for such things. | `map(string)` | `{}` | no |

## Outputs

| Name | Description |
|------|-------------|
| <a name="output_search_result"></a> [search\_result](#output\_search\_result) | n/a |

0 comments on commit 9cc0375

Please sign in to comment.