base on Example OpenID Connect relying party as a Sinatra app # identity-openidconnect-sinatra An example of a Relying Party for OpenID Connect written as a simple Sinatra app in Ruby. ## Running locally 1. Set up the environment with: ``` $ make setup ``` 2. And run the app server: ``` $ make run ``` 3. To run specs: ``` $ make test ``` ## Configuring 1. This sample service provider is configured to run on http://localhost:9292 by default. Optionally, you can assign a custom hostname or port by passing `HOST=` or `PORT=` environment variables when starting the application server. However, when you do this, you also have to make corresponding changes to the `redirect_uri` environment variable and also configure the identity provider appropriately. 2. Some other key environment variables that affect configuration: | Environment Variable | Description | Default | |-----------------------------|----------------------------------------------------------------------------------------------|-------------------------------------------| | client_id | Identifier for this app as configured with the identity provider. Used unless `PKCE` is true | urn:gov:gsa:openidconnect:sp:sinatra | | client_id_pkce | Identifier for this app as configured with the identity provider. Used if `PKCE` is true | urn:gov:gsa:openidconnect:sp:sinatra_pkce | | eipp_allowed | Enhanced In Person Proofing allowed | false | | idp_url | URL for the identity provider | http://localhost:3000 | | PKCE | Determines if PKCE or private_key_jwt is used to communicate with the identity provider | false | | semantic_ial_values_enabled | Determines if semantic IAL values can be used in `acr_values` | fals | | vtr_disabled | Vectors of Trust disabled | false | ## Contributing See [CONTRIBUTING](CONTRIBUTING.md) for additional information. ## Public domain This project is in the worldwide [public domain](LICENSE.md). As stated in [CONTRIBUTING](CONTRIBUTING.md): > This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the [CC0 1.0 Universal public domain dedication](https://creativecommons.org/publicdomain/zero/1.0/). > > All contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest. ", Assign "at most 3 tags" to the expected json: {"id":"13073","tags":[]} "only from the tags list I provide: []" returns me the "expected json"