GluuFederation / agama-hello

Agama Project for hello.coop consumer authentication

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Contributors Forks Stargazers Issues Apache License

Agama-Hellō

This Agama project uses agama-openid for OpenID authentication to leverage the powerful hello.coop platform for consumer authentication, which supports a variety of authenticators and social login options. Also, This is an example to show the reusability of agama flows from one project to another.

Requirements

Supported IDPs

IDP How to Install?
Jans Auth Server https://docs.jans.io/stable/admin/install/
Gluu Flex https://docs.gluu.org/stable/install/

Flows

Qualified Name Description
org.gluu.hello.coop Main agama flow of this project. It first collects the configuration details and triggers to org.gluu.inbound.oauth2.AuthzCodeWithUserInfo flow of agama-openid project. After successful authentication, redirect to this main flow for the user onboard. Kindly, check the diagram for better understanding

Configurations

Sample JSON:

{
  "org.gluu.hello.coop": {
    "hello": {
      "oauth": {
        "authzEndpoint": "https://wallet.hello.coop/authorize",
        "tokenEndpoint": "https://wallet.hello.coop/oauth/token",
        "userInfoEndpoint": "https://wallet.hello.coop/oauth/userinfo",
        "clientId": "CLIENT_INDENTIFIER",
        "clientSecret": "CLIENT_SECRET",
        "scopes": [
          "openid"
        ]
      },
      "uidPrefix": "hello-"
    }
  }
}
Flow Property Description
org.gluu.hello.coop oauth These are OAuth parameters for OpenID authentication. To know more details on these (oauthParams), Kindly check agama-openid section
org.gluu.hello.coop uidPrefix Prefix string value for user unique ID. By default, Each user those are onboarded through this flow will use the prefix hello- with username

Sequence Diagram

A basic diagram to understand how the agama-hello works.

hello-agama-diagram (Source Image)

Demo

You'll need an OpenID Connect test RP. You can try oidcdebugger, jans-tarp or jans-tent. Check out this video to see an example of agama-hello in action:

ezgif-1-1574bd2d5c

Contributors

Mobarak
Mobarak Hosen Shakil

License

This project is licensed under the Apache 2.0

Acknowledgments

This project is based on agama-openid.

About

Agama Project for hello.coop consumer authentication

License:Apache License 2.0


Languages

Language:Java 100.0%