{"id":21762743,"url":"https://github.com/nulib/ueberauth_openam","last_synced_at":"2025-03-21T04:43:00.823Z","repository":{"id":34402790,"uuid":"178521470","full_name":"nulib/ueberauth_openam","owner":"nulib","description":"OpenAM strategy for Überauth","archived":false,"fork":false,"pushed_at":"2022-02-23T05:27:06.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-02-28T09:31:47.466Z","etag":null,"topics":["authentication","elixir","openam","ueberauth"],"latest_commit_sha":null,"homepage":null,"language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nulib.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-03-30T06:34:36.000Z","updated_at":"2021-11-03T15:25:46.000Z","dependencies_parsed_at":"2022-08-08T01:00:27.694Z","dependency_job_id":null,"html_url":"https://github.com/nulib/ueberauth_openam","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulib%2Fueberauth_openam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulib%2Fueberauth_openam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulib%2Fueberauth_openam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nulib%2Fueberauth_openam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nulib","download_url":"https://codeload.github.com/nulib/ueberauth_openam/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244739939,"owners_count":20501990,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authentication","elixir","openam","ueberauth"],"created_at":"2024-11-26T12:13:01.627Z","updated_at":"2025-03-21T04:43:00.804Z","avatar_url":"https://github.com/nulib.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ueberauth OpenAM Strategy\n\n[![Build](https://github.com/nulib/ueberauth_openam/actions/workflows/build.yml/badge.svg)](https://github.com/nulib/ueberauth_openam/actions/workflows/build.yml)\n[![Coverage](https://coveralls.io/repos/github/nulib/ueberauth_openam/badge.svg?branch=main)](https://coveralls.io/github/nulib/ueberauth_openam?branch=main)\n[![Hex.pm](https://img.shields.io/hexpm/v/ueberauth_openam.svg)](https://hex.pm/packages/ueberauth_openam)\n\n[OpenAM](https://github.com/OpenIdentityPlatform/OpenAM) strategy for [Ueberauth](https://github.com/ueberauth/ueberauth)\n\n## Installation\n\n1. Add `ueberauth` and `ueberauth_openam` to your list of dependencies in `mix.exs`:\n\n```elixir\ndef deps do\n  [\n    {:ueberauth, \"~\u003e 0.2\"},\n    {:ueberauth_openam, \"~\u003e 0.1.0\"},\n  ]\nend\n```\n\n2. Ensure `ueberauth_openam` is started before your application:\n\n```elixir\ndef application do\n  [applications: [:ueberauth_openam]]\nend\n```\n\n3. Configure the OpenAM integration in `config/config.exs`:\n\n```elixir\nconfig :ueberauth, Ueberauth,\n  providers: [openam: {Ueberauth.Strategy.OpenAM, [\n    base_url: \"http://websso.example.com/\",\n    sso_cookie: \"openAMssoToken\",\n  ]}]\n```\n\n4. Add the request and callback routes in your router (below are defaults):\n\n```\nget \"/:provider\", AuthController, :request\nget \"/:provider/callback\", AuthController, :callback\n```\n\n5. In your auth controller include the Üeberauth plug and implement the callback routes for success and failure:\n\n```elixir\ndefmodule MyApp.AuthController do\n  use MyApp.Web, :controller\n\n  plug Ueberauth\n\n\n  def callback(%{assigns: %{ueberauth_auth: auth}} = conn, _params) do\n    ...\n  end\n\n  def callback(%{assigns: %{ueberauth_failure: _fails}} = conn, _params) do\n    ...\n  end\nend\n```\n\n## Contributing\n\nIssues and Pull Requests are always welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnulib%2Fueberauth_openam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnulib%2Fueberauth_openam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnulib%2Fueberauth_openam/lists"}