-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite config delivery, and actually request and display LOA3 data #53
Conversation
- Drop the use of dotenv entirely. We were using it for private config, not even for secrets, so it was just creating a ton of churn without providing any utility. - Create a new config mechanism that uses LoginGov::Hostdata to provide all the standard defaults for Login.gov's EC2 environments. This should allow the sample app to work in all environments with no config except for the OIDC private RSA key. - Start moving the OIDC private key to AWS Secrets Manager. When we detect that the app is running in EC2, attempt to load the private key from AWS Secrets. If it's not found, fall back to the demo key in the repo only in sandbox environments. In local dev, continue using the demo key. - Drop support for HTTP basic auth, which hasn't been used since we migrated nonprod environments to identitysandbox.gov. - Allow overriding the default config values using `config/application.yml`. - Rewrite tests to pass with all of the above changes.
- Request various available LOA3 profiles. - Display the SSN that we received, unredacted in local dev and redacted by default in all EC2 environments. - Display all userinfo attributes received from the SP.
@@ -4,4 +4,4 @@ | |||
# or operating system, you probably want to add a global ignore instead: | |||
# git config --global core.excludesfile '~/.gitignore_global' | |||
|
|||
.env |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We may wanna keep .env
, just to keep it from getting accidentally checked in by anyone who's cloned this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great. Tested locally 👍
gem 'dotenv' | ||
gem 'httparty' | ||
gem 'aws-sdk-secretsmanager', '~> 1.21' | ||
gem 'activesupport', '~> 5.2' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: alpha sort of Gems
gem 'sinatra' | ||
gem 'json-jwt', '~> 1.9.4' | ||
gem 'jwt', '~> 2.1' | ||
gem 'sinatra', '~> 2.0', '>= 2.0.2' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes to pinning! 💅
Thanks |
Rewrite config delivery to be more deterministic.
not even for secrets, so it was just creating a ton of churn without
providing any utility.
all the standard defaults for Login.gov's EC2 environments. This
should allow the sample app to work in all environments with no config
except for the OIDC private RSA key.
detect that the app is running in EC2, attempt to load the private key
from AWS Secrets. If it's not found, fall back to the demo key in the
repo only in sandbox environments. In local dev, continue using the
demo key.
migrated nonprod environments to identitysandbox.gov.
config/application.yml
.Make sample app actually do something with LOA3.
by default in all EC2 environments.
Bundle update Gemfile.lock.