
Security News
New Website “Is It Really FOSS?” Tracks Transparency in Open Source Distribution Models
A new site reviews software projects to reveal if they’re truly FOSS, making complex licensing and distribution models easy to understand.
The IIAB apps use an OAuth service provider (currently FusionAuth). This gem serves to standardize integration with this service. The hope is that, at some point, we can add this service to the CMS, Kamaji, and related apps.
Add this line to your application's Gemfile:
gem 'oauth_im', '0.x.y' # e.g., '0.1.2'
Then run:
$ bundle
Once the gem is installed, add an initializer. The iiab app provides an example.
The ENV
variable values can be obtained from the OAuth provider.
callback_route
setting is used in two related ways:
OAuthIm::ClientController#callback
action.Applications|OAuth
tab.
staging-kh-iiab.herokuapp.com
, if
config.callback_route
is set to callback
(the default), then
the URL https://staging-kh-iiab.herokuapp.com/oauth_im/callback
must be entered in the OAuth provider's list of authorized
redirect URLs.To determine the access token signing key, find the name of the key and then look it up on the Settings|Key Master pane. (See screenshots.)
Inspect your app settings. The screenshot shows this being done for the app
Kendall Hunt - Terraform
.
Find the name of the token. The screenshot shows this being done for the app
Kendall Hunt - Terraform
. You will need to scroll down the page to the JWT
section.
Look up this signing token under Home|Settings|Key Master. The screenshot shows this being done
for the signing token KendallHunt-Terraform (12)
.
The engine provides two endpoints for logging in and out, and exposes corresponding view helpers. These are accessible from the main app as:
path | url |
---|---|
oauth_im.login_path | oauth_im.login_url |
oauth_im.logout_path | oauth_im.logout_url |
The controller actions for these routes are provided and should "just work." Note that there are no view templates associated with these actions, since requests to them are redirected to the OAuth provider.
The gem provides a controller concern, OauthIm::Authenticable
, that
exposes two helper methods for use in views:
authenticated?
: returns true
if the user has been authenticated
by the OAuth service, false otherwise.email
: returns the current user's authenticated email address.You can include this concern in your app's ApplicationController
or
some other appropriate location, e.g.:
class ApplicationController < ActionController::Base
include OauthIm::Authenticable
# etc.
end
AppContext
.AppContext#provide_authentication?
method defaults to true
and
can be overridden as required.
iiab
overrides this initializer so that the
provide_authentication?
method returns false
unless the app
is kh_iiab
(not demo_im
).AppContext#privileged?
defaults to nil
and can be overridden as required.AppContext#authenticate_for_specs
offers a way to mock
authentication and privilege in specs. It accepts a block.After many false starts, this repo includes two (seemingly functional) github workflows.
fix: a comment about a minor change that corresponds to a SemVar patch
feat: a comment about a feature change that corresponds to a SemVar minor
fix!: a comment about a breaking change that corresponds to a Semvar major
feat!: ditto
iiab
app via the AppContext
module. Added default AppContext
settings to be overridden in
client app (in this case, iiab
).FAQs
Unknown package
We found that oauth_im demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
A new site reviews software projects to reveal if they’re truly FOSS, making complex licensing and distribution models easy to understand.
Security News
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.
Security News
The Latio podcast explores how static and runtime reachability help teams prioritize exploitable vulnerabilities and streamline AppSec workflows.