GithubHelp home page GithubHelp logo

nipunibhagya / identity-apps Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wso2/identity-apps

0.0 2.0 0.0 433.22 MB

License: Apache License 2.0

JavaScript 2.89% TypeScript 85.88% HTML 0.66% CSS 0.74% Java 8.43% Shell 0.01% Less 0.61% Jinja 0.54% SCSS 0.24%

identity-apps's Introduction

WSO2 Identity Server Apps

End-user apps in WSO2 Identity Server

Stackoverflow Discord License Twitter


Table of Content

Prerequisite

Setup Development Environment

  1. Install NodeJS LTS(Latest Stable Version) from https://nodejs.org/en/download/.
  2. Install pnpm.

Note: Only PNPM v9 and above are supported.

```shell
corepack prepare pnpm@latest --activate
```

Or, follow the other [recommended installation options](https://pnpm.io/installation).
  1. Install Maven from https://maven.apache.org/download.cgi.
  2. Install JDK 11 https://openjdk.org/projects/jdk/.
  3. Install the recommended developer tools.

Download WSO2 Identity Server

In order to setup this repository locally, you need to have WSO2 Identity Server installed on your local environment.

We recommend you to download the latest release or build the product-is from source.

Setup WSO2 Identity Server

Allow CORS Origins

Add the following code to repository/conf/deployment.toml in WSO2 Identity Server distribution pack to allow CORS for local deployment URLs.

[cors]
allowed_origins = [
    "https://localhost:9000",
    "https://localhost:9001"
]
supported_methods = [
    "GET",
    "POST",
    "HEAD",
    "OPTIONS",
    "PUT",
    "PATCH",
    "HEAD",
    "DELETE",
    "PATCH"
]
exposed_headers = [ "Location" ]

Configure FIDO2 origins

Add your hostname and port as a trusted FIDO2 origin to the deployment.toml file as given below.

[fido.trusted]
origins=["https://localhost:9000"]

Make Applications Editable

Currently, Console & My Account are considered as system applications hence they are readonly by default. In order to configure them, you need to add the following config to the deployment.toml file to override the default behavior.

[system_applications]
read_only_apps = []

Configure Callback URLs for System Applications (for WSO2 IS v7.0 and above)

Important

In Identity Server v7.0 and above, callback_urls for system applications need to be configured from the deployment.toml file. If your Identity Server version is below v7.0, callback URLs can be configured from the developer console, which is explained in a later step in this guide.

[console]
callback_url = "regexp=(https://localhost:9443/console|https://localhost:9443/t/(.*)/console|https://localhost:9443/console/login|https://localhost:9443/t/(.*)/console/login|https://localhost:9001/console|https://localhost:9001/t/(.*)/console|https://localhost:9001/console/login|https://localhost:9001/t/(.*)/console/login|https://localhost:9443/o/(.*)/console|https://localhost:9001/o/(.*)/console|https://localhost:9001/o/(.*)/console/login)"

[myaccount]
callback_url = "regexp=(https://localhost:9443/myaccount|https://localhost:9443/t/(.*)/myaccount|https://localhost:9443/myaccount/login|https://localhost:9443/t/(.*)/myaccount/login|https://localhost:9000/myaccount|https://localhost:9000/t/(.*)/myaccount|https://localhost:9000/myaccount/login|https://localhost:9000/t/(.*)/myaccount/login)"

Start the Identity Server

Now you can go ahead and start WSO2 Identity Server that was downloaded in the Prerequisites step.

For instructions on startup, read the docs.

Configure Callback URLs for System Applications (for WSO2 IS below v7.0)

โ„น๏ธ Note

This step is only applicable for WSO2 Identity Server versions below v7.0.

  1. Navigate to the Management Console i.e https://localhost:9443/carbon/ from the browser, and login to the system by entering an admin password.

๐Ÿ’ก Find out the default password details at https://docs.wso2.com/display/ADMIN44x/Configuring+the+System+Administrator

  1. In the Management Console,
    • navigate to Service Providers -> List from left side panel.

    • Then go to Edit option in the application that you want to configure in dev mode (ex: MY_ACCOUNT).

    • Click on Inbound Authentication Configuration -> OAuth/OpenID Connect Configuration -> Edit.

    • Update the Callback Url field with below corresponding values.

      • Console

        regexp=(https://localhost:9443/console|https://localhost:9443/t/(.*)/console|https://localhost:9443/console/login|https://localhost:9443/t/(.*)/console/login|https://localhost:9001/console|https://localhost:9001/t/(.*)/console|https://localhost:9001/console/login|https://localhost:9001/t/(.*)/console/login|https://localhost:9443/o/(.*)/console|https://localhost:9001/o/(.*)/console|https://localhost:9001/o/(.*)/console/login)
      • My Account

        regexp=(https://localhost:9443/myaccount|https://localhost:9443/t/(.*)/myaccount|https://localhost:9443/myaccount/login|https://localhost:9443/t/(.*)/myaccount/login|https://localhost:9000/myaccount|https://localhost:9000/t/(.*)/myaccount|https://localhost:9000/myaccount/login|https://localhost:9000/t/(.*)/myaccount/login)

Build & Run

Build

Clone or download the identity-apps repository and run the following commands from the command line in the project root directory (where the package.json is located) to build all the packages with dependencies.

For Console & My Account

# From project root.
pnpm install && pnpm build

For JSP apps (authentication portal, recovery portal, etc)

# From project root.
cd identity-apps-core

mvn clean install

Run

To start the apps in development mode, execute the following commands accordingly.

Console

# To start Console
cd apps/console
pnpm start

Once the development server is up and running, you can access the application via https://localhost:9001/console.

My Account

# To start My Account
cd apps/myaccount
pnpm start

Once the development server is up and running, you can access the application via https://localhost:9000/myaccount.

Releases

This repository uses ๐Ÿฆ‹ Changesets to manage releases. Refer to release documentation to learn more about the release process.

Configuration

The portals i.e. Console & My Account are configurable using the deployment.toml when they are hosted inside the Identity Server. Read through our configurations guidelines to learn about the configuration process.

Deployment

Go through our deployment guide to learn the supported app deployment options.

Connectors

Go through our connectors guide to learn how to handle connectors in the Identity Server Console.

Troubleshoot

Go through our troubleshooting guide to clarify any issues you encounter.

If the issue you are facing is not on the existing guide, consider reaching out to us on Discord, StackOverflow or by creating an issue as described in Reporting Issues.

Contributing

Go through our contributing guideline to get an understanding about our contribution process and other necessary instructions.

Reporting Issues

We encourage you to report issues, improvements and feature requests regarding the project through GitHub Issue Tracker.

โš ๏ธ Important:

Please be advised that security issues must be reported to [email protected], not as GitHub issues, in order to reach proper audience. We strongly advise following the WSO2 Security Vulnerability Reporting Guidelines when reporting the security issues.

License

Licenses this source under the Apache License, Version 2.0 (LICENSE), You may not use this file except in compliance with the License.


(c) Copyright 2022 WSO2 LLC.

identity-apps's People

Contributors

wso2-jenkins-bot avatar brionmario avatar thivi avatar github-actions[bot] avatar nipunibhagya avatar pavindulakshan avatar jeradrutnam avatar donomalvindula avatar jayashakthi97 avatar dimalchandrasiri avatar dilshansenarath avatar yasinmiran avatar dasuni-30 avatar savindi7 avatar achintha444 avatar inthirakumaaran avatar thiva-k avatar kavinda1995 avatar thanujalk avatar nipunsampath avatar jathushan-r avatar kayathiri4 avatar chamathns avatar vihanga-liyanage avatar dinikasen avatar vivekvinushanth avatar pasinduyeshan avatar yathindrak avatar ashanthamara avatar rashmini avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.