How to integrate SSO with Ruby + Hoop.dev
- Create a Hoop.dev account and get your authentication token
- Create a connection to access with SSO using the Hoop CLI
- Invite your team to access the connection with SSO using the Hoop CLI
If you don't need a tutorial and just want to get started, please consider reading the quickstart docs instead.
Ruby support in Hoop.dev
Why Hoop.dev?
SSO integration require a lot more engineering time, resources and ongoing maintenance than you would first expect.
When first integrating a new service you need to understand the specifics of how to configure SSO for such service. Some services will require a paid or enterprise license only to let you do that. Or sometimes the service might not offer SSO integration. When you manage to setup the initial integration, you have to automate the internal profiles of your service to the profiles of your IDP. The authorization process is time consuming and as you evolve to finer-grained permissions you have to revisit all your SSO integrations.
Integrating SSO
Main concepts
- connection: these are the services you'll manage. They have have credentials, attached policies, and a few other properties.
- policy: policies are the rules you set for how users interact with a connection. Each connection can have multiple policies and each session for that connection will have a set of policies applied on the begging and during the session time.
- session: these are the interactions of your users with the connections. They can be behave differently depending on the policies configured for the connection.
Install dependencies
MacOS: Top this brew formula and install the CLI
brew tap hoophq/hoopcli https://github.com/hoophq/hoopcli
brew install hoopLinux: Run this shell script to install the CLI (check the code here)
curl -s -L https://releases.hoop.dev/release/install-cli.sh | shSign in with the CLI
hoop loginGet your authentication token
hoop admin create agent demoRun the Hoop.dev agent
The agent can run on any platform, from Linux VMs to container platforms like Kubernetes. Check out the installation guides for details on how to deploy to other platforms.
export HOOP_DSN=grpcs://demo:xagt-SV9N48TQiD2TozyHFCAE4XsoKa21YF1GKLsvflAWSnV@use.hoop.dev:8443?mode=standard
hoop start agentCreate a connection per profile
Connections are what users connect to. A connection represents one of the profiles, like or , for a given service. Each of your users will have access to one or more connections. The easiest way to create a new connection is when a new service is setup.
You'll need the connection name when using a connection. You can either find it in the web dashboard where all the connections you can access are easily visible, or list them with the CLI.
Setup the Ruby connection with the console startup command
Connect with SSO (sessions)
Connect to the Ruby console with SSO
Helping your team access with SSO
Running AI agents against production? hoop.dev is an open-source proxy that sits between agents and your databases and servers. It checks every command at runtime and masks sensitive data before it reaches the agent. Try it free: hoop.dev/start
We offer an intuitive and easy to use internal developer platform to easily connect to any service which you can share with internal user directly. Simply invite them in the settings and they'll be able to use it.
We also offer easy to use docs for how to easily connect to any service which you can share with internal user directly.
Finally, the Web editor provides users with a consistent interface on the web with modern IDE experience without the need to interact with CLI tools.
Further reading
That's it!
If you have any questions, or you just want to chat, please reach out using the chat bubble menu.
Related articles
Integrate SSO with Ruby (Ruby on Rails)
Integrate SSO with Ruby (Rails Admin)
Integrate SSO with Ruby (Rails Console)
Integrate SSO with Ruby (Rails Runner)
Integrate SSO with Ruby (Rake Tasks)
Integrate SSO with Ruby (Heroku)
Integrate SSO with Ruby (Kubernetes)
Integrate SSO with Ruby (AWS ECS)
Integrate SSO with Ruby (Firebase)