diff --git a/DESCRIPTION b/DESCRIPTION index 9f88baa..042b92c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,8 +1,8 @@ Package: aws.iam Type: Package Title: AWS IAM Client Package -Version: 0.1.5 -Date: 2016-12-20 +Version: 0.1.6 +Date: 2017-06-30 Author: Thomas J. Leeper Maintainer: Thomas J. Leeper Description: A simple client package for the Amazon Web Services (AWS) Identity @@ -13,7 +13,7 @@ Imports: httr, xml2, jsonlite, - aws.signature (>= 0.2.6) + aws.signature (>= 0.3.4) URL: https://github.com/cloudyr/aws.iam BugReports: https://github.com/cloudyr/aws.iam/issues -RoxygenNote: 5.0.1 +RoxygenNote: 6.0.1 diff --git a/NEWS.md b/NEWS.md index e65ee5e..b9d350a 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,7 @@ +# CHANGES TO aws.iam 0.1.5 + +* Bump **aws.signature** dependency to 0.3.4. + # CHANGES TO aws.iam 0.1.4 * Documentation fixes. (#5) diff --git a/R/http.R b/R/http.R index d3ad7e0..78c41a1 100644 --- a/R/http.R +++ b/R/http.R @@ -5,10 +5,10 @@ #' @param version A character string specifying an API version. Default is \dQuote{2010-05-08}. #' @param verb A character string specifying an HTTP verb. Either \dQuote{GET} or \dQuote{POST}. #' @param body A character string specifying a request body (if \code{verb = "POST"}). -#' @param region A character string specifying an AWS region. The default is drawn from environment variable \env{AWS_DEFAULT_REGION}. -#' @param key A character string specifying an AWS Access Key. The default is drawn from environment variable \env{AWS_ACCESS_KEY_ID}. -#' @param secret A character string specifying an AWS Secret Key. The default is drawn from environment variable \env{AWS_SECRET_ACCESS_KEY}. -#' @param session_token Optionally, a character string specifying an AWS temporary Session Token to use in signing a request. The default is drawn from environment variable \env{AWS_SESSION_TOKEN}. +#' @param region A character string specifying an AWS region. See \code{\link[aws.signature]{locate_credentials}}. +#' @param key A character string specifying an AWS Access Key. See \code{\link[aws.signature]{locate_credentials}}. +#' @param secret A character string specifying an AWS Secret Key. See \code{\link[aws.signature]{locate_credentials}}. +#' @param session_token Optionally, a character string specifying an AWS temporary Session Token to use in signing a request. See \code{\link[aws.signature]{locate_credentials}}. #' @param \dots Additional arguments passed to \code{\link[httr]{GET}} or \code{\link[httr]{POST}} #' @import httr #' @importFrom aws.signature signature_v4_auth @@ -19,10 +19,10 @@ iamHTTP <- function(query, verb = "GET", body = "", version = "2010-05-08", - region = Sys.getenv("AWS_DEFAULT_REGION"), - key = Sys.getenv("AWS_ACCESS_KEY_ID"), - secret = Sys.getenv("AWS_SECRET_ACCESS_KEY"), - session_token = Sys.getenv("AWS_SESSION_TOKEN"), + region = Sys.getenv("AWS_DEFAULT_REGION", "us-east-1"), + key = NULL, + secret = NULL, + session_token = NULL, ...) { if (!"Version" %in% names(query)) { query[["Version"]] <- version @@ -80,10 +80,10 @@ iamHTTP <- function(query, #' @export stsHTTP <- function(query, version = "2011-06-15", - region = Sys.getenv("AWS_DEFAULT_REGION"), - key = Sys.getenv("AWS_ACCESS_KEY_ID"), - secret = Sys.getenv("AWS_SECRET_ACCESS_KEY"), - session_token = Sys.getenv("AWS_SESSION_TOKEN"), + region = Sys.getenv("AWS_DEFAULT_REGION", "us-east-1"), + key = NULL, + secret = NULL, + session_token = NULL, ...) { if (!"Version" %in% names(query)) { query[["Version"]] <- version @@ -112,7 +112,7 @@ stsHTTP <- function(query, H <- do.call(add_headers, headers) r <- GET(paste0("https://sts.amazonaws.com"), H, query = query, ...) - if (http_status(r)$category == "Client error") { + if (http_error(r)) { x <- try(as_list(read_xml(content(r, "text", encoding = "UTF-8"))), silent = TRUE) if (inherits(x, "try-error")) { x <- try(fromJSON(content(r, "text", encoding = "UTF-8"))$Error, silent = TRUE) diff --git a/README.Rmd b/README.Rmd index 11162b4..d0e866d 100644 --- a/README.Rmd +++ b/README.Rmd @@ -2,20 +2,24 @@ **aws.iam** is a simple client package for the Amazon Web Services (AWS) [Identity and Access Management (IAM)](http://aws.amazon.com/iam/) and [Simple Token Service (STS)](http://docs.aws.amazon.com/STS/latest/APIReference) API, which can be used to manage access credentials for AWS services. -To use the package, you will need an AWS account and enter your credentials into R. Your keypair can be generated on the [IAM Management Console](https://aws.amazon.com/) under the heading *Access Keys*. Note that you only have access to your secret key once. After it is generated, you need to save it in a secure location. New keypairs can be generated at any time if yours has been lost, stolen, or forgotten. - -By default, all **cloudyr** packages look for the access key ID and secret access key in environment variables. You can also use this to specify a default region or a temporary "session token". For example: - -```R -Sys.setenv("AWS_ACCESS_KEY_ID" = "mykey", - "AWS_SECRET_ACCESS_KEY" = "mysecretkey", - "AWS_DEFAULT_REGION" = "us-east-1", - "AWS_SESSION_TOKEN" = "mytoken") -``` - -These can alternatively be set on the command line prior to starting R or via an `Renviron.site` or `.Renviron` file, which are used to set environment variables in R during startup (see `? Startup`). - -If you work with multiple AWS accounts, another option that is consistent with other Amazon SDKs is to create [a centralized `~/.aws/credentials` file](https://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs), containing credentials for multiple accounts. You can then use credentials from this file on-the-fly by simply doing: +To use the package, you will need an AWS account and to enter your credentials into R. Your keypair can be generated on the [IAM Management Console](https://aws.amazon.com/) under the heading *Access Keys*. Note that you only have access to your secret key once. After it is generated, you need to save it in a secure location. New keypairs can be generated at any time if yours has been lost, stolen, or forgotten. The [**aws.iam** package](https://github.com/cloudyr/aws.iam) profiles tools for working with IAM, including creating roles, users, groups, and credentials programmatically; it is not needed to *use* IAM credentials. + +By default, all **cloudyr** packages for AWS services allow the use of credentials specified in a number of ways, beginning with: + + 1. User-supplied values passed directly to functions. + 2. Environment variables, which can alternatively be set on the command line prior to starting R or via an `Renviron.site` or `.Renviron` file, which are used to set environment variables in R during startup (see `? Startup`). Or they can be set within R: + + ```R + Sys.setenv("AWS_ACCESS_KEY_ID" = "mykey", + "AWS_SECRET_ACCESS_KEY" = "mysecretkey", + "AWS_DEFAULT_REGION" = "us-east-1", + "AWS_SESSION_TOKEN" = "mytoken") + ``` + 3. If R is running an EC2 instance, the role profile credentials provided by [**aws.ec2metadata**](https://cran.r-project.org/package=aws.ec2metadata). + 4. Profiles saved in a `/.aws/credentials` "dot file" in the current working directory. The `"default" profile is assumed if none is specified. + 5. [A centralized `~/.aws/credentials` file](https://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs), containing credentials for multiple accounts. The `"default" profile is assumed if none is specified. + +Profiles stored locally or in a centralized location (e.g., `~/.aws/credentials`) can also be invoked via: ```R # use your 'default' account credentials diff --git a/README.md b/README.md new file mode 100644 index 0000000..d0e866d --- /dev/null +++ b/README.md @@ -0,0 +1,65 @@ +# AWS IAM Client Package + +**aws.iam** is a simple client package for the Amazon Web Services (AWS) [Identity and Access Management (IAM)](http://aws.amazon.com/iam/) and [Simple Token Service (STS)](http://docs.aws.amazon.com/STS/latest/APIReference) API, which can be used to manage access credentials for AWS services. + +To use the package, you will need an AWS account and to enter your credentials into R. Your keypair can be generated on the [IAM Management Console](https://aws.amazon.com/) under the heading *Access Keys*. Note that you only have access to your secret key once. After it is generated, you need to save it in a secure location. New keypairs can be generated at any time if yours has been lost, stolen, or forgotten. The [**aws.iam** package](https://github.com/cloudyr/aws.iam) profiles tools for working with IAM, including creating roles, users, groups, and credentials programmatically; it is not needed to *use* IAM credentials. + +By default, all **cloudyr** packages for AWS services allow the use of credentials specified in a number of ways, beginning with: + + 1. User-supplied values passed directly to functions. + 2. Environment variables, which can alternatively be set on the command line prior to starting R or via an `Renviron.site` or `.Renviron` file, which are used to set environment variables in R during startup (see `? Startup`). Or they can be set within R: + + ```R + Sys.setenv("AWS_ACCESS_KEY_ID" = "mykey", + "AWS_SECRET_ACCESS_KEY" = "mysecretkey", + "AWS_DEFAULT_REGION" = "us-east-1", + "AWS_SESSION_TOKEN" = "mytoken") + ``` + 3. If R is running an EC2 instance, the role profile credentials provided by [**aws.ec2metadata**](https://cran.r-project.org/package=aws.ec2metadata). + 4. Profiles saved in a `/.aws/credentials` "dot file" in the current working directory. The `"default" profile is assumed if none is specified. + 5. [A centralized `~/.aws/credentials` file](https://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs), containing credentials for multiple accounts. The `"default" profile is assumed if none is specified. + +Profiles stored locally or in a centralized location (e.g., `~/.aws/credentials`) can also be invoked via: + +```R +# use your 'default' account credentials +aws.signature::use_credentials() + +# use an alternative credentials profile +aws.signature::use_credentials(profile = "bob") +``` + +Temporary session tokens are stored in environment variable `AWS_SESSION_TOKEN` (and will be stored there by the `use_credentials()` function). The [aws.iam package](https://github.com/cloudyr/aws.iam/) provides an R interface to IAM roles and the generation of temporary session tokens via the security token service (STS). + + +## Code Examples + +Coming soon... + +## Installation + +[![CRAN](https://www.r-pkg.org/badges/version/aws.iam)](https://cran.r-project.org/package=aws.iam) +![Downloads](https://cranlogs.r-pkg.org/badges/aws.iam) +[![Build Status](https://travis-ci.org/cloudyr/aws.iam.png?branch=master)](https://travis-ci.org/cloudyr/aws.iam) +[![codecov.io](https://codecov.io/github/cloudyr/aws.iam/coverage.svg?branch=master)](https://codecov.io/github/cloudyr/aws.iam?branch=master) + +This package is not yet on CRAN. To install the latest development version you can install from the cloudyr drat repository: + +```R +# latest stable version +install.packages("aws.iam", repos = c(cloudyr = "http://cloudyr.github.io/drat", getOption("repos"))) +``` + +Or, to pull a potentially unstable version directly from GitHub: + +```R +if (!require("ghit")) { + install.packages("ghit") +} +ghit::install_github("cloudyr/aws.iam") +``` + +To install the latest version from CRAN, simply use `install.packages("aws.iam")`. + +--- +[![cloudyr project logo](http://i.imgur.com/JHS98Y7.png)](https://github.com/cloudyr) diff --git a/man/STS.Rd b/man/STS.Rd index 82f9775..35885c1 100644 --- a/man/STS.Rd +++ b/man/STS.Rd @@ -1,11 +1,11 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/sts.R \name{get_session_token} +\alias{get_session_token} +\alias{get_federation_token} +\alias{get_caller_identity} \alias{assume_role} \alias{delete_saved_credentials} -\alias{get_caller_identity} -\alias{get_federation_token} -\alias{get_session_token} \alias{restore_credentials} \title{Temporary Session Tokens} \usage{ @@ -31,6 +31,8 @@ restore_credentials() \item{use}{A logical (default \code{FALSE}), specifying whether to use these credentials for subsequent requests. If \code{TRUE}, any currently used credentials are stored in a package environment (if no credentials are already stored; in that case, the request will fail) and the requested tokens overwrite them in the relevant environment variables. \code{restore_credentials()} can then be used to reset environment variables based on those from the saved environment; \code{delete_saved_credentials()} deletes the credentials without restoring them.} +\item{\dots}{Additional arguments passed to \code{\link{stsHTTP}}.} + \item{name}{The name of the federated user.} \item{policy}{A character string specifying a JSON-formatted role policy. For \code{assume_role}, if \code{role} is an object of class \dQuote{iam_role}, this will be inferred automatically.} @@ -40,8 +42,6 @@ restore_credentials() \item{session}{A character string specifying the name of the temporary session.} \item{externalid}{A unique identifier that is used by third parties when assuming roles in their customers' accounts.} - -\item{\dots}{Additional arguments passed to \code{\link{stsHTTP}}.} } \value{ A list. @@ -72,4 +72,3 @@ get_caller_identity() # check identity, again \href{http://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html}{API Reference: AssumeRoleWithSAML} \href{http://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html}{API Reference: AssumeRoleWithWebIdentity} } - diff --git a/man/aliases.Rd b/man/aliases.Rd index ab9fae5..b074d78 100644 --- a/man/aliases.Rd +++ b/man/aliases.Rd @@ -15,11 +15,11 @@ list_aliases(n, marker, ...) \arguments{ \item{alias}{A character string specifying an alias, or an object of class \dQuote{iam_alias}.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{create_alias} and \code{delete_alias} return a logical \code{TRUE} (if successful). \code{list_aliases} returns a list of objects of class \dQuote{iam_alias}. @@ -30,4 +30,3 @@ Retrieve, create, update, and delete IAM Account Aliases \references{ \href{http://docs.aws.amazon.com/IAM/latest/UserGuide/console_account-alias.html}{AWS Account Aliases} } - diff --git a/man/aws.iam-package.Rd b/man/aws.iam-package.Rd index e7d7a60..1f51469 100644 --- a/man/aws.iam-package.Rd +++ b/man/aws.iam-package.Rd @@ -2,8 +2,8 @@ % Please edit documentation in R/aws.iam-package.R \docType{package} \name{aws.iam-package} -\alias{aws.iam} \alias{aws.iam-package} +\alias{aws.iam} \title{aws.iam} \description{ AWS IAM and STS Client Package @@ -11,11 +11,10 @@ AWS IAM and STS Client Package \details{ A simple client package for the Amazon Web Services (AWS) Identity and Access Management (IAM) and Simple Token Service (STS) APIs. } -\author{ -Thomas J. Leeper -} \references{ \href{https://aws.amazon.com/documentation/iam/}{IAM Documentation} } +\author{ +Thomas J. Leeper +} \keyword{package} - diff --git a/man/get_account.Rd b/man/get_account.Rd index daa91ca..a22af47 100644 --- a/man/get_account.Rd +++ b/man/get_account.Rd @@ -1,9 +1,9 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/get_account.R \name{get_account} -\alias{auth_details} -\alias{credential_report} \alias{get_account} +\alias{credential_report} +\alias{auth_details} \title{Get Account Details} \usage{ get_account(...) @@ -13,13 +13,13 @@ credential_report(...) auth_details(type, n, marker, ...) } \arguments{ +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{type}{An optional character string specifying one or more types of reports to return.} \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ A list containing various account details. @@ -30,4 +30,3 @@ Retrieve IAM Account Details. This is useful as a \dQuote{hello world!} test. \details{ \code{get_account} returns a list of account details. \code{credential_report} generates and/or retrieves a credential report. \code{auth_details} returns a list of group, user, role, and policy details. } - diff --git a/man/groups.Rd b/man/groups.Rd index 2977b39..7deb8f2 100644 --- a/man/groups.Rd +++ b/man/groups.Rd @@ -1,13 +1,13 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/groups.R \name{create_group} -\alias{add_user} \alias{create_group} +\alias{update_group} \alias{delete_group} \alias{get_group_users} \alias{list_groups} +\alias{add_user} \alias{remove_user} -\alias{update_group} \title{Manage IAM User Groups} \usage{ create_group(group, path, ...) @@ -29,6 +29,8 @@ remove_user(user, group, ...) \item{path}{A character string specifying a path prefix in which to locate user(s), role(s), etc. See \href{http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html}{Reference Identifiers} on the AWS Documentation for more information.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{name}{A character string specifying the new name for the group.} \item{n}{An integer specifying the number of responses to return.} @@ -36,8 +38,6 @@ remove_user(user, group, ...) \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} \item{user}{A character string specifying a user name.} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{create_group} and \code{get_group} return objects of class \dQuote{iam_group}. \code{update_group} and \code{delete_group}, \code{add_user}, and \code{remove_user} return a logical \code{TRUE} (if successful) or an error. \code{list_groups} returns a list of IAM group objects. \code{get_group_users} returns a list of objects of class \dQuote{iam_user}, with a \dQuote{iam_group} attribute. @@ -45,4 +45,3 @@ remove_user(user, group, ...) \description{ Retrieve, create, update, and delete IAM user groups } - diff --git a/man/iamHTTP.Rd b/man/iamHTTP.Rd index 3ec550c..8ade980 100644 --- a/man/iamHTTP.Rd +++ b/man/iamHTTP.Rd @@ -6,16 +6,12 @@ \title{Workhorse API Query Functions} \usage{ iamHTTP(query, verb = "GET", body = "", version = "2010-05-08", - region = Sys.getenv("AWS_DEFAULT_REGION"), - key = Sys.getenv("AWS_ACCESS_KEY_ID"), - secret = Sys.getenv("AWS_SECRET_ACCESS_KEY"), - session_token = Sys.getenv("AWS_SESSION_TOKEN"), ...) + region = Sys.getenv("AWS_DEFAULT_REGION", "us-east-1"), key = NULL, + secret = NULL, session_token = NULL, ...) stsHTTP(query, version = "2011-06-15", - region = Sys.getenv("AWS_DEFAULT_REGION"), - key = Sys.getenv("AWS_ACCESS_KEY_ID"), - secret = Sys.getenv("AWS_SECRET_ACCESS_KEY"), - session_token = Sys.getenv("AWS_SESSION_TOKEN"), ...) + region = Sys.getenv("AWS_DEFAULT_REGION", "us-east-1"), key = NULL, + secret = NULL, session_token = NULL, ...) } \arguments{ \item{query}{A named list specifying query arguments.} @@ -26,17 +22,16 @@ stsHTTP(query, version = "2011-06-15", \item{version}{A character string specifying an API version. Default is \dQuote{2010-05-08}.} -\item{region}{A character string specifying an AWS region. The default is drawn from environment variable \env{AWS_DEFAULT_REGION}.} +\item{region}{A character string specifying an AWS region. See \code{\link[aws.signature]{locate_credentials}}.} -\item{key}{A character string specifying an AWS Access Key. The default is drawn from environment variable \env{AWS_ACCESS_KEY_ID}.} +\item{key}{A character string specifying an AWS Access Key. See \code{\link[aws.signature]{locate_credentials}}.} -\item{secret}{A character string specifying an AWS Secret Key. The default is drawn from environment variable \env{AWS_SECRET_ACCESS_KEY}.} +\item{secret}{A character string specifying an AWS Secret Key. See \code{\link[aws.signature]{locate_credentials}}.} -\item{session_token}{Optionally, a character string specifying an AWS temporary Session Token to use in signing a request. The default is drawn from environment variable \env{AWS_SESSION_TOKEN}.} +\item{session_token}{Optionally, a character string specifying an AWS temporary Session Token to use in signing a request. See \code{\link[aws.signature]{locate_credentials}}.} \item{\dots}{Additional arguments passed to \code{\link[httr]{GET}} or \code{\link[httr]{POST}}} } \description{ These are the low-level API querying functions for IAM and STS. Users do not need to use these directly. } - diff --git a/man/instance_profiles.Rd b/man/instance_profiles.Rd index dfde38b..8e3de8e 100644 --- a/man/instance_profiles.Rd +++ b/man/instance_profiles.Rd @@ -20,13 +20,13 @@ list_profiles(role, n, marker, path, ...) \item{path}{A character string specifying a path prefix in which to locate user(s), role(s), etc. See \href{http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html}{Reference Identifiers} on the AWS Documentation for more information.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{role}{A character string containing a role name or an object of class \dQuote{iam_role}.} \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ An object of class \dQuote{iam_instance_profile}. @@ -41,4 +41,3 @@ Create, retrieve, list, and delete EC2 Instance Profiles \href{http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetInstanceProfile.html}{API Documentation: GetInstanceProfile} \href{http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListInstanceProfiles.html}{API Documentation: ListInstanceProfiles} } - diff --git a/man/keys.Rd b/man/keys.Rd index 13fd9e3..dbadb34 100644 --- a/man/keys.Rd +++ b/man/keys.Rd @@ -2,9 +2,9 @@ % Please edit documentation in R/accesskey.R \name{create_key} \alias{create_key} +\alias{update_key} \alias{delete_key} \alias{list_keys} -\alias{update_key} \title{Manage Access Keys/Credentials} \usage{ create_key(user, ...) @@ -18,6 +18,8 @@ list_keys(user, n, marker, ...) \arguments{ \item{user}{Optionally, a character string specifying a user name or an object of class \dQuote{iam_user}. This will be retrieved by default from the \dQuote{UserName} list entry in \code{key}, if available; otherwise the user is assumed to be the user whose credentials are being used to execute the request.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{key}{A character string specifying an access key or an object of class \dQuote{iam_key}.} \item{status}{A character string specifying either \dQuote{Active} or \dQuote{Inactive} to status the key status to.} @@ -25,8 +27,6 @@ list_keys(user, n, marker, ...) \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{create_user} and \code{get_user} return objects of class \dQuote{iam_user}. \code{update_user} and \code{delete_user} return a logical \code{TRUE} (if successful) or an error. \code{list_users} returns a list of IAM user objects. @@ -34,4 +34,3 @@ list_keys(user, n, marker, ...) \description{ Retrieve, create, update, and delete IAM access keys } - diff --git a/man/passwords.Rd b/man/passwords.Rd index c10340c..9ece27e 100644 --- a/man/passwords.Rd +++ b/man/passwords.Rd @@ -18,6 +18,8 @@ set_pwd_policy(allowchange, hardexpire, age, length, previous, requirements, \item{new}{A character string specifying the new password} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{allowchange}{Optionally, a logical indicating whether to allow users to change their own passwords (default is \code{FALSE}).} \item{hardexpire}{Optionally, a logical indicating whether to prevent users from changing their passwords after they expire (default is \code{FALSE}).} @@ -29,8 +31,6 @@ set_pwd_policy(allowchange, hardexpire, age, length, previous, requirements, \item{previous}{Optionally, a number specifying the number (between 1 and 24) of previous passwords that users are prevented from reusing. Default is 0.} \item{requirements}{A character vector specifying whether to require specific password features, including: \dQuote{upper} (upper case character), \dQuote{lower} (lower case character), \dQuote{number} (a digit), and \dQuote{symbol} (a symbol). Multiple can be specified.} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{get_pwd_policy} returns a list. \code{change_pwd} and \code{set_pwd_policy} return a logical \code{TRUE} (if successful). @@ -41,4 +41,3 @@ Change password for currently authenticated user \references{ \href{http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html}{IAM Password Policies} } - diff --git a/man/policies.Rd b/man/policies.Rd index 873cf8c..4efefde 100644 --- a/man/policies.Rd +++ b/man/policies.Rd @@ -2,10 +2,10 @@ % Please edit documentation in R/policy.R \name{add_policy} \alias{add_policy} -\alias{delete_policy} +\alias{update_policy} \alias{get_policy} +\alias{delete_policy} \alias{list_policies} -\alias{update_policy} \title{Manage IAM Polices} \usage{ add_policy(user, group, role, policy, doc, ...) @@ -29,11 +29,11 @@ list_policies(user, group, role, n, marker, ...) \item{doc}{The contents of the policy document as a character string.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{add_policy} and \code{get_policy} return objects of class \dQuote{iam_policy}. \code{update_policy} and \code{delete_policy} return a logical \code{TRUE} (if successful) or an error. \code{list_policies} returns a list of IAM role objects. @@ -41,4 +41,3 @@ list_policies(user, group, role, n, marker, ...) \description{ Retrieve, create, update, and delete IAM Role, User, and Group Polices } - diff --git a/man/roles.Rd b/man/roles.Rd index 03aa201..052e1b8 100644 --- a/man/roles.Rd +++ b/man/roles.Rd @@ -1,11 +1,11 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/roles.R \name{create_role} -\alias{add_profile_role} \alias{create_role} \alias{delete_role} -\alias{list_roles} +\alias{add_profile_role} \alias{remove_profile_role} +\alias{list_roles} \title{Manage IAM Roles} \usage{ create_role(role, policy, path, ...) @@ -25,13 +25,13 @@ list_roles(n, marker, path, ...) \item{path}{A character string specifying a path prefix in which to locate user(s), role(s), etc. See \href{http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html}{Reference Identifiers} on the AWS Documentation for more information.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{profile}{A character string specifying the name for the profile, or an object of class \dQuote{iam_instance_profile}.} \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{create_role} and \code{get_role} return objects of class \dQuote{iam_role}. \code{update_role} and \code{delete_role} return a logical \code{TRUE} (if successful) or an error. \code{list_roles} returns a list of IAM role objects. @@ -39,4 +39,3 @@ list_roles(n, marker, path, ...) \description{ Retrieve, create, update, and delete IAM Roles } - diff --git a/man/users.Rd b/man/users.Rd index 3358bed..52cc5a8 100644 --- a/man/users.Rd +++ b/man/users.Rd @@ -2,10 +2,10 @@ % Please edit documentation in R/user.R \name{create_user} \alias{create_user} -\alias{delete_user} +\alias{update_user} \alias{get_user} +\alias{delete_user} \alias{list_users} -\alias{update_user} \title{Manage IAM Users} \usage{ create_user(user, path, ...) @@ -23,13 +23,13 @@ list_users(n, marker, path, ...) \item{path}{A character string specifying a path prefix in which to locate user(s), role(s), etc. See \href{http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html}{Reference Identifiers} on the AWS Documentation for more information.} +\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} + \item{name}{A character string specifying the new name for the user.} \item{n}{An integer specifying the number of responses to return.} \item{marker}{A character string specifying a marker (from a previous response) to use in paginating results} - -\item{\dots}{Additional arguments passed to \code{\link{iamHTTP}}.} } \value{ \code{create_user} and \code{get_user} return objects of class \dQuote{iam_user}. \code{update_user} and \code{delete_user} return a logical \code{TRUE} (if successful) or an error. \code{list_users} returns a list of IAM user objects. @@ -37,4 +37,3 @@ list_users(n, marker, path, ...) \description{ Retrieve, create, update, and delete IAM Users } -