概要

ローカルのJavascriptをNodeJSで実行する際に、Javascript上でローカルのAWSプロファイルを指定する方法を紹介。意外と便利です。

ソースコード

// AWSプロファイルの指定
const AWS = require('aws-sdk');
const credentials = new AWS.SharedIniFileCredentials({
  profile: 'exampleProfile',
  filename: '~/.aws/credentials'
});
AWS.config.credentials = credentials;

// 以降のAWS SDKは、ローカルのexampleProfileを使用して実行されます
const {CognitoIdentityServiceProvider} = require('aws-sdk');
const documentClient = new AWS.DynamoDB.DocumentClient({
  region: 'ap-northeast-1'
});
const cognitoIdentityServiceProvider = new CognitoIdentityServiceProvider({
  region: 'ap-northeast-1'
});

使い所としては、ローカルでCognitoやDynamoDBにテストユーザーを作成しておきたい時とかですね。(サインアップ処理が完成していない状況でサインアップを実装したい時がユースケース)

色々と応用方法ありそう。