filtersConfigs() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/iam/OrganizationsFeatures.java b/sdk/java/src/main/java/com/pulumi/aws/iam/OrganizationsFeatures.java
new file mode 100644
index 00000000000..7eb92d2c80c
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/aws/iam/OrganizationsFeatures.java
@@ -0,0 +1,147 @@
+// *** WARNING: this file was generated by pulumi-java-gen. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+package com.pulumi.aws.iam;
+
+import com.pulumi.aws.Utilities;
+import com.pulumi.aws.iam.OrganizationsFeaturesArgs;
+import com.pulumi.aws.iam.inputs.OrganizationsFeaturesState;
+import com.pulumi.core.Output;
+import com.pulumi.core.annotations.Export;
+import com.pulumi.core.annotations.ResourceType;
+import com.pulumi.core.internal.Codegen;
+import java.lang.String;
+import java.util.List;
+import javax.annotation.Nullable;
+
+/**
+ * Manages centralized root access features across AWS member accounts managed using AWS Organizations. More information about managing root access in IAM can be found in the [Centralize root access for member accounts](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-enable-root-access.html).
+ *
+ * > **NOTE:** The AWS account utilizing this resource must be an Organizations management account. Also, you must enable trusted access for AWS Identity and Access Management in AWS Organizations.
+ *
+ * ## Example Usage
+ *
+ * <!--Start PulumiCodeChooser -->
+ *
+ * {@code
+ * package generated_program;
+ *
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.organizations.Organization;
+ * import com.pulumi.aws.organizations.OrganizationArgs;
+ * import com.pulumi.aws.iam.OrganizationsFeatures;
+ * import com.pulumi.aws.iam.OrganizationsFeaturesArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ *
+ * public class App {
+ * public static void main(String[] args) {
+ * Pulumi.run(App::stack);
+ * }
+ *
+ * public static void stack(Context ctx) {
+ * var example = new Organization("example", OrganizationArgs.builder()
+ * .awsServiceAccessPrincipals("iam.amazonaws.com")
+ * .featureSet("ALL")
+ * .build());
+ *
+ * var exampleOrganizationsFeatures = new OrganizationsFeatures("exampleOrganizationsFeatures", OrganizationsFeaturesArgs.builder()
+ * .enabledFeatures(
+ * "RootCredentialsManagement",
+ * "RootSessions")
+ * .build());
+ *
+ * }
+ * }
+ * }
+ *
+ * <!--End PulumiCodeChooser -->
+ *
+ * ## Import
+ *
+ * Using `pulumi import`, import root access features using the `id`. For example:
+ *
+ * ```sh
+ * $ pulumi import aws:iam/organizationsFeatures:OrganizationsFeatures example o-1234567
+ * ```
+ *
+ */
+@ResourceType(type="aws:iam/organizationsFeatures:OrganizationsFeatures")
+public class OrganizationsFeatures extends com.pulumi.resources.CustomResource {
+ /**
+ * List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ */
+ @Export(name="enabledFeatures", refs={List.class,String.class}, tree="[0,1]")
+ private Output> enabledFeatures;
+
+ /**
+ * @return List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ */
+ public Output> enabledFeatures() {
+ return this.enabledFeatures;
+ }
+
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ */
+ public OrganizationsFeatures(java.lang.String name) {
+ this(name, OrganizationsFeaturesArgs.Empty);
+ }
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param args The arguments to use to populate this resource's properties.
+ */
+ public OrganizationsFeatures(java.lang.String name, OrganizationsFeaturesArgs args) {
+ this(name, args, null);
+ }
+ /**
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param args The arguments to use to populate this resource's properties.
+ * @param options A bag of options that control this resource's behavior.
+ */
+ public OrganizationsFeatures(java.lang.String name, OrganizationsFeaturesArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ super("aws:iam/organizationsFeatures:OrganizationsFeatures", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false);
+ }
+
+ private OrganizationsFeatures(java.lang.String name, Output id, @Nullable OrganizationsFeaturesState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ super("aws:iam/organizationsFeatures:OrganizationsFeatures", name, state, makeResourceOptions(options, id), false);
+ }
+
+ private static OrganizationsFeaturesArgs makeArgs(OrganizationsFeaturesArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ if (options != null && options.getUrn().isPresent()) {
+ return null;
+ }
+ return args == null ? OrganizationsFeaturesArgs.Empty : args;
+ }
+
+ private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) {
+ var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder()
+ .version(Utilities.getVersion())
+ .build();
+ return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id);
+ }
+
+ /**
+ * Get an existing Host resource's state with the given name, ID, and optional extra
+ * properties used to qualify the lookup.
+ *
+ * @param name The _unique_ name of the resulting resource.
+ * @param id The _unique_ provider ID of the resource to lookup.
+ * @param state
+ * @param options Optional settings to control the behavior of the CustomResource.
+ */
+ public static OrganizationsFeatures get(java.lang.String name, Output id, @Nullable OrganizationsFeaturesState state, @Nullable com.pulumi.resources.CustomResourceOptions options) {
+ return new OrganizationsFeatures(name, id, state, options);
+ }
+}
diff --git a/sdk/java/src/main/java/com/pulumi/aws/iam/OrganizationsFeaturesArgs.java b/sdk/java/src/main/java/com/pulumi/aws/iam/OrganizationsFeaturesArgs.java
new file mode 100644
index 00000000000..c6bf00be30a
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/aws/iam/OrganizationsFeaturesArgs.java
@@ -0,0 +1,96 @@
+// *** WARNING: this file was generated by pulumi-java-gen. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+package com.pulumi.aws.iam;
+
+import com.pulumi.core.Output;
+import com.pulumi.core.annotations.Import;
+import com.pulumi.exceptions.MissingRequiredPropertyException;
+import java.lang.String;
+import java.util.List;
+import java.util.Objects;
+
+
+public final class OrganizationsFeaturesArgs extends com.pulumi.resources.ResourceArgs {
+
+ public static final OrganizationsFeaturesArgs Empty = new OrganizationsFeaturesArgs();
+
+ /**
+ * List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ */
+ @Import(name="enabledFeatures", required=true)
+ private Output> enabledFeatures;
+
+ /**
+ * @return List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ */
+ public Output> enabledFeatures() {
+ return this.enabledFeatures;
+ }
+
+ private OrganizationsFeaturesArgs() {}
+
+ private OrganizationsFeaturesArgs(OrganizationsFeaturesArgs $) {
+ this.enabledFeatures = $.enabledFeatures;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+ public static Builder builder(OrganizationsFeaturesArgs defaults) {
+ return new Builder(defaults);
+ }
+
+ public static final class Builder {
+ private OrganizationsFeaturesArgs $;
+
+ public Builder() {
+ $ = new OrganizationsFeaturesArgs();
+ }
+
+ public Builder(OrganizationsFeaturesArgs defaults) {
+ $ = new OrganizationsFeaturesArgs(Objects.requireNonNull(defaults));
+ }
+
+ /**
+ * @param enabledFeatures List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ * @return builder
+ *
+ */
+ public Builder enabledFeatures(Output> enabledFeatures) {
+ $.enabledFeatures = enabledFeatures;
+ return this;
+ }
+
+ /**
+ * @param enabledFeatures List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ * @return builder
+ *
+ */
+ public Builder enabledFeatures(List enabledFeatures) {
+ return enabledFeatures(Output.of(enabledFeatures));
+ }
+
+ /**
+ * @param enabledFeatures List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ * @return builder
+ *
+ */
+ public Builder enabledFeatures(String... enabledFeatures) {
+ return enabledFeatures(List.of(enabledFeatures));
+ }
+
+ public OrganizationsFeaturesArgs build() {
+ if ($.enabledFeatures == null) {
+ throw new MissingRequiredPropertyException("OrganizationsFeaturesArgs", "enabledFeatures");
+ }
+ return $;
+ }
+ }
+
+}
diff --git a/sdk/java/src/main/java/com/pulumi/aws/iam/inputs/OrganizationsFeaturesState.java b/sdk/java/src/main/java/com/pulumi/aws/iam/inputs/OrganizationsFeaturesState.java
new file mode 100644
index 00000000000..9c6b9091523
--- /dev/null
+++ b/sdk/java/src/main/java/com/pulumi/aws/iam/inputs/OrganizationsFeaturesState.java
@@ -0,0 +1,94 @@
+// *** WARNING: this file was generated by pulumi-java-gen. ***
+// *** Do not edit by hand unless you're certain you know what you are doing! ***
+
+package com.pulumi.aws.iam.inputs;
+
+import com.pulumi.core.Output;
+import com.pulumi.core.annotations.Import;
+import java.lang.String;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
+import javax.annotation.Nullable;
+
+
+public final class OrganizationsFeaturesState extends com.pulumi.resources.ResourceArgs {
+
+ public static final OrganizationsFeaturesState Empty = new OrganizationsFeaturesState();
+
+ /**
+ * List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ */
+ @Import(name="enabledFeatures")
+ private @Nullable Output> enabledFeatures;
+
+ /**
+ * @return List of IAM features to enable. Valid values are `RootCredentialsManagement` and `RootSessions`.
+ *
+ */
+ public Optional