UNPKG

@cloudtoolkit/aws

Version:

The Cloud Toolkit AWS provider for Pulumi provision well-architected solutions in [AWS](https://aws.amazon.com/). With Cloud Toolkit AWS you can use your preferred programming language to manage your platform with Infrastructure as Code.

92 lines (91 loc) 3.75 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as pulumiAws from "@pulumi/aws"; import * as pulumiKubernetes from "@pulumi/kubernetes"; /** * IamAuthenticator is a component that integrates the AWS IAM service with the Kubernetes authentication system. He receives a list of AWS IAM users and roles to enable their authentication to the cluster. */ export declare class IamAuthenticator extends pulumi.ComponentResource { /** * Returns true if the given object is an instance of IamAuthenticator. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is IamAuthenticator; /** * The AWS IAM Group that has admin permission in the cluster. */ readonly clusterAdminGroup: pulumi.Output<pulumiAws.iam.Group>; /** * The AWS IAM Group Policy that has admin permission in the cluster. */ readonly clusterAdminGroupPolicy: pulumi.Output<pulumiAws.iam.GroupPolicy>; /** * The AWS IAM Role that has admin permission in the cluster. */ readonly clusterAdminRole: pulumi.Output<pulumiAws.iam.Role>; /** * The AWS IAM Group Policy that has admin permission in the cluster. */ readonly clusterAdminRolePolicy: pulumi.Output<pulumiAws.iam.RolePolicy>; /** * The list of AWS IAM UserGroupMemebership to provide cluster-admin access to the given users. */ readonly clusterAdminUserGroupMemberships: pulumi.Output<pulumiAws.iam.UserGroupMembership[]>; /** * The AWS IAM Group Policy that has admin permission in the cluster. */ readonly clusterUserPolicy: pulumi.Output<pulumiAws.iam.Policy>; /** * The AWS IAM Group Policy that has admin permission in the cluster. */ readonly clusterUserPolicyAttachment: pulumi.Output<pulumiAws.iam.PolicyAttachment | undefined>; /** * The Path applied to the authentication ConfigMap. */ readonly configMap: pulumi.Output<pulumiKubernetes.core.v1.ConfigMap>; /** * The Kubernetes provider. */ readonly provider: pulumi.Output<pulumiKubernetes.Provider>; /** * Create a IamAuthenticator resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: IamAuthenticatorArgs, opts?: pulumi.ComponentResourceOptions); } /** * The set of arguments for constructing a IamAuthenticator resource. */ export interface IamAuthenticatorArgs { /** * List of AWS Accounts allowed to authenticate in the cluster. */ accounts?: pulumi.Input<pulumi.Input<string>[]>; /** * The list of AWS IAM Users names to be configured as cluster-admin. */ clusterAdmins?: pulumi.Input<pulumi.Input<string>[]>; /** * The EKS Cluster ARN. */ clusterArn: pulumi.Input<string>; /** * The Kubeconfig to access to the cluster. */ kubeconfig: pulumi.Input<string>; /** * The list of AWS IAM Roles for NodeGroups to generate the aws-auth ConfigMap. */ nodeGroupRoles?: pulumi.Input<pulumi.Input<inputs.kubernetes.IamAuthenticatorRoleArgs>[]>; /** * The list of AWS IAM Roles to generate the aws-auth ConfigMap. */ roles?: pulumi.Input<pulumi.Input<inputs.kubernetes.IamAuthenticatorRoleArgs>[]>; /** * The list of AWS IAM Users to generate the aws-auth ConfigMap. */ users?: pulumi.Input<pulumi.Input<inputs.kubernetes.IamAuthenticatorUserArgs>[]>; }