@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
TypeScript
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>[]>;
}