AWS SFTPのカスタム認証の設定を掘り下げてきましたが、これはブラックホールの1つです。カスタムIDPを使用できるようにするための参照はたくさんありますが、具体的な例はありません。
Active Directoryを使用しており、現在AWS SSOが設定されているため、理論的にはSAMLとのフェデレーションが可能と思われます。テストインスタンスでは、SSOを有効にしてディレクトリサービスにMicrosoftADを設定しています。
Amazonの例は、主にラムダ関数に基づくクラウド形成テンプレートを提供します。ラムダ関数は非常にシンプルで、ラムダにハードコードされたパスワードをAmazonシークレットに対して検証します。明らかに、それは実用的ではありません。
誰かがこれをしましたか?どのようにしてそれを機能させることができましたか?
別の質問は、誰かがラムダを使用してADに対して認証したかどうかだと思います。
これが私が見たいくつかのリソースです。 Cognitoユーザープールにあるものだけが、あらゆる種類の代替セットアップの詳細なウォークスルーを提供します。 Cognito IDプールを使用できる場合もありますが、ユーザープールはこのユースケースでは機能しません。
カスタムIDプロバイダーを使用したブログ投稿と同様のアプローチを使用できますが、AWS CognitoAPI呼び出しをActiveDirectoryバインドに置き換えます。
関連するコードフラグメントは次のとおりです。
exports.authorize = async function(event) {
return new Promise((resolve, reject) => {
const username = event.pathParameters.user;
const password = event.headers.Password;
console.log(`Performing authentication for user ${username}`);
client.bind(`${username}@${process.env.LDAP_DIRECTORY_NAME}`, password, err => {
if (err) {
reject(err);
} else {
const response = {
headers: {
"Access-Control-Allow-Origin": "*",
"Content-Type": "application/json"
},
body: getSftpPolicy(username),
statusCode: 200
};
resolve(response);
}
});
});
};
あなたはこれでより多くの情報を見つけることができます ブログ投稿 。また、プロジェクトテンプレートでこれ GitHubリポジトリ を自由に使用してください。