awslabs / service-workbench-on-aws

A platform that provides researchers with one-click access to collaborative workspace environments operating across teams, universities, and datasets while enabling university IT stakeholders to manage, monitor, and control spending, apply security best practices, and comply with corporate governance.
Apache License 2.0
178 stars 119 forks source link

[Feature Request] Session Manager support #973

Open tdmalone opened 2 years ago

tdmalone commented 2 years ago

Is your feature request related to a problem? Please describe. Currently Service Workbench uses EC2 Instance Connect to push SSH keys to Linux instances, and opens up ports for the user's current IP address (or other CIDR they supply).

Describe the solution you'd like AWS offers the free Session Manager product as part of Systems Manager, which provides SSH-like interaction with instances, over HTTPS with access controlled by IAM, with logging (to CloudWatch or S3) of all commands entered. This requires no ports to be opened and also provides auditing of sessions via CloudTrail.

Describe alternatives you've considered n/a

Additional context Session Manager could potentially be offered as a another 'connection' option that could be enabled either alongside, or instead of, SSH.

I'm not sure of the best way to handle authentication, however. In a test env I've set up federated access via Okta to both Service Workbench and AWS and am using Session Manager with that, however without federation it might need further thought.

nguyen102 commented 2 years ago

Thank you for your suggestion. I've added this feature request to our backlog.