8000 GitHub - atomicjolt/atomic_lti_1v1
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

atomicjolt/atomic_lti_1v1

Repository files navigation

AtomicLti1v1

A middleware to validate LTI 1.1 requests. When a request is determined to be an lti launch, the middleware will validate the request. Upon a successful validation the oauth_consumer_key will be added to the rack environment here: atomic.validated.oauth_consumer_key.

Usage

In another middleware, the validated oauth_consumer_key can be accessed like this:


def call(env)
  env['atomic.validated.oauth_consumer_key'] # Validated oauth consumer key

In the rails app, the validated oauth_consumer_key can be accessed like this:

request.env["atomic.validated.oauth_consumer_key"]

Installation

Install migrations

bin/rails atomic_lti1v1:install:migrations

This will copy only previously uncopied migrations to your project.

Add initializer

Create file config/initializers/atomic_lti_1v1.rb Provide secret_provider

# Lookup an lti_secret from an oauth_consumer_key
AtomicLti1v1.secret_provider = Proc.new do |oauth_consumer_key| 
  # If using most Atomic Jolt Apps, probably something like this
  ApplicationInstance.find_by(lti_key: oauth_consumer_key)&.lti_secret 
end
# List of path prefixes to handle. Default is the following:
AtomicLti1v1.path_prefixes = ["/lti_launches"] 

License

The gem is available as open source under the terms of the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

0