AWS Cognito:将用户限制为单个域

时间:2016-12-06 07:05:30

标签: amazon-web-services amazon-cognito

我正在使用google联合登录谷歌作为身份提供商。要求是仅允许我公司的用户(域名为xxx@mycompany.com)。

非常感谢有关如何以及在何处配置此类规则的任何想法。或者请指出正确的文档。

谢谢,

3 个答案:

答案 0 :(得分:4)

我能够通过pre-signup lambda trigger实现这一目标,找不到只使用配置来限制访问的方法。

这是我的lambda函数代码

exports.handler = (event, context, callback) => {
    console.log ("Trigger function =", event.triggerSource);

    // Send post authentication data to Cloudwatch logs
    if (event.request.userAttributes.email.endsWith('@mydomain.com')) {
            console.log ("Authentication successful: ", event.request);
            callback(null, event);
    } else {
        console.log ("Authentication failed: ", event.request);
        callback("can't connect to admin", event)
    }

};

答案 1 :(得分:1)

您可以合理地将此验证构建到用户注册/登录流程中触发的lambda hooks之一。

答案 2 :(得分:0)

Lambda触发器仅适用于Cognito用户池,不适用于Cognito身份池。

此问题已在此处回答:Restrict login to Enterprise Google Domain for AWS Federated Identity Pool