Skip to content

Commit

Permalink
Merge pull request #653 from ITfoxtec/test
Browse files Browse the repository at this point in the history
Test
  • Loading branch information
Revsgaard authored Nov 9, 2023
2 parents 6dcd43b + e602c5c commit 0433ccd
Show file tree
Hide file tree
Showing 63 changed files with 3,478 additions and 1,098 deletions.
15 changes: 9 additions & 6 deletions FoxIDs.sln
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{CB5D86A0-D
docs\email.md = docs\email.md
docs\faq.md = docs\faq.md
docs\foxids-inside.md = docs\foxids-inside.md
docs\getting-started.md = docs\getting-started.md
docs\howto-connect.md = docs\howto-connect.md
docs\get-started.md = docs\get-started.md
docs\howto-oidc-foxids.md = docs\howto-oidc-foxids.md
docs\howto-saml-2.0-context-handler.md = docs\howto-saml-2.0-context-handler.md
docs\howto-tracklink-foxids.md = docs\howto-tracklink-foxids.md
Expand Down Expand Up @@ -141,11 +141,14 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "images", "images", "{CB8812
docs\images\example-claim-transform-remove-post-up-party-name.png = docs\images\example-claim-transform-remove-post-up-party-name.png
docs\images\faq-pass-through-all-claims-down-party.png = docs\images\faq-pass-through-all-claims-down-party.png
docs\images\faq-pass-through-all-claims-up-party.png = docs\images\faq-pass-through-all-claims-up-party.png
docs\images\getting-started-app.png = docs\images\getting-started-app.png
docs\images\getting-started-first-access.png = docs\images\getting-started-first-access.png
docs\images\getting-started-login.png = docs\images\getting-started-login.png
docs\images\getting-started-test-user-new.png = docs\images\getting-started-test-user-new.png
docs\images\getting-started-test-user.png = docs\images\getting-started-test-user.png
docs\images\get-started-app.png = docs\images\get-started-app.png
docs\images\get-started-first-access.png = docs\images\get-started-first-access.png
docs\images\get-started-login.png = docs\images\get-started-login.png
docs\images\get-started-test-user-new.png = docs\images\get-started-test-user-new.png
docs\images\get-started-test-user.png = docs\images\get-started-test-user.png
docs\images\how-to-connect.svg = docs\images\how-to-connect.svg
docs\images\how-to-track-link.svg = docs\images\how-to-track-link.svg
docs\images\how-to.vsdx = docs\images\how-to.vsdx
docs\images\howto-oidc-azuread-readredirect.png = docs\images\howto-oidc-azuread-readredirect.png
docs\images\howto-oidc-foxids-parallel-down-party.png = docs\images\howto-oidc-foxids-parallel-down-party.png
docs\images\howto-oidc-foxids-up-party-readredirect.png = docs\images\howto-oidc-foxids-up-party-readredirect.png
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
FoxIDs is an open-source Identity Services (IDS) supporting [login](https://www.foxids.com/docs/login), [OAuth 2.0](https://www.foxids.com/docs/oauth-2.0), [OpenID Connect 1.0](https://www.foxids.com/docs/oidc), [SAML 2.0](https://www.foxids.com/docs/saml-2.0) and convention between [OpenID Connect and SAML 2.0](https://www.foxids.com/docs/parties).
FoxIDs handles multi-factor authentication (MFA) / two-factor authentication (2FA) with support for two-factor authenticator app.

> For [Getting started](https://www.foxids.com/docs/getting-started) guide and more documentation please see the [documentation](https://www.foxids.com/docs).
> For [Get started](https://www.foxids.com/docs/get-started) guide and more documentation please see the [documentation](https://www.foxids.com/docs).
FoxIDs is designed as a container with multi-tenant support. FoxIDs can be deployed and use by e.g. a single company or deployed as a shared cloud container and used by multiple organisations, companies or everyone with the need.
Separation is ensured at the tenant level and in each tenant separated by tracks. The tracks in a tenant segmentate environments, e.g. test, QA and production and e.g. trusts to external or internal IdPs.
Expand Down
4 changes: 3 additions & 1 deletion docs/_sidebar.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
- [Description](index.md)
- [Getting Started](getting-started.md)
- [Get started](get-started.md)
- [How to connect](howto-connect.md)
- [Connect to IdP](howto-connect.md#up-party---how-to-connect-identity-provider-idp)
- [Become an IdP](howto-connect.md#down-party---how-to-become-an-identity-provider-idp)
- [Parties](parties.md)
- [Login & HRD & 2FA/MFA](login.md)
- [OpenID Connect](oidc.md)
Expand Down
2 changes: 1 addition & 1 deletion docs/control.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Normally you should not change the master track configuration or add new up-part

### Create administrator user(s)

It is possible to create more administrator users in the master track. A user become an administrator by adding the administrator role `foxids:tenant.admin` like shown below.
It is possible to create more administrator users in the `master` track. A user become an administrator by adding the administrator role `foxids:tenant.admin` like shown below.

Create a user:

Expand Down
2 changes: 1 addition & 1 deletion docs/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ and Key vault
> If the pre seed fails e.g., because of missing settings. You can re-initiate the pre seed process by deleting the FoxIDs database in Cosmos DB.
After successfully login you have access to the master tenant. You should then create a dev tenant where you can add applications (down-party), APIs (down-party), user login (up-party) and external trust (up-party).
After having your dev tenant created you can follow the [get started guide](https://localhost:44333/docs/getting-started#2-first-login).
After having your dev tenant created you can follow the [get started guide](get-started.md#2-first-login).

## API client proxy

Expand Down
79 changes: 79 additions & 0 deletions docs/get-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Get started
FoxIDs is available at [FoxIDs.com](https://foxids.com) or you can [deploy](deployment.md) FoxIDs in your Microsoft Azure tenant as your own private cloud.

#### FoxIDs.com
[FoxIDs.com](https://foxids.com) is deployed in Europe in Microsoft Azure Holland as an Identity Services (IDS) also called Identity as a Service (IDaaS).

a. [Register on FoxIDs.com](https://foxids.com/action/createtenant), where you get access to your one FoxIDs tenant. The tenant will hold your organizations entire security service.
You become the first admin user and you can add more [admin users](control.md#create-administrator-users) later on. You can optionally configure [external trust](howto-connect.md#up-party---how-to-connect-identity-provider-idp) in the `master` track to authorize external admin users.

---

#### FoxIDs Private Cloud
FoxIDs is [open-source](index.md#free-and-open-source) and you are free to deploy FoxIDs as your own private cloud in your Microsoft Azure tenant.

a. [Deploy](deployment.md) FoxIDs in your Microsoft Azure tenant.
b. After successfully deployment, [login](deployment.md#first-login-and-admin-users) to the `master` tenant.
You can create more [admin users](control.md#create-administrator-users) in the `master` tenant. You can optionally configure [external trust](howto-connect.md#up-party---how-to-connect-identity-provider-idp) to authorize external admin users.
c. Create the tenant for your organizations security services. Applications, APIs and connections in general is configured in this tenant.
You can create more [admin users](control.md#create-administrator-users) in the new tenants `master` track.
You can optionally [connect](howto-oidc-foxids.md) the `master` tenants `master` track to the new tenants `master` track to authorize admin users from the `master` tenant.


## 1) First login
You are presented with a list of your tracks when you login.

![FoxIDs first login](images/get-started-first-access.png)

The default tracks in a tenant:

- `master` is the track responsible for access to the tenant and the subsequently tracks.
The [Control Client](control.md#foxids-control-client) and [Control API](control.md#foxids-control-api) is configured in the `master` track and admin users is added to the `master` track.
You should normally not add applications in the `master` track.
- `-` (dash) is the production track holding your organizations production security service
- `test` is a track meant for testing. You probably need more tracks for dev, test QA etc.

You can add and delete tracks as you wish including deleting the default `-` (dash) and `test` tasks.

## 2) Run the first application
You can e.g. start by configuring the first application in the `test` track, add [test user(s)](get-started.md#add-test-users) and login.

You can either configure [your own application](get-started.md#configure-your-own-application) or configure the samples and run a [sample application](get-started.md#sample-application).

> Add a test user to be able to login!
### Add test user(s)
Select the `test` track and go to the `Users` tab to create a test user(s).

![Test user](images/get-started-test-user.png)

Then click `Create User`, fill out the page and click `Create`.

![Create test user](images/get-started-test-user-new.png)

### Default login UI
In the `test` track go to the `Parties` tab and `Up-parties` subtab where you find the default [login](login.md) up-party which handles the user login and logout.

![Login up-party](images/get-started-login.png)


### Configure your own application
In the `test` track go to the `Parties` tab and `Down-parties` subtab to configure your application.

A web based applications (client / relaying party) can be configured with [OpenID Connect](down-party-oidc.md) or [SAML 2.0](down-party-saml-2.0.md).

![Down-party application](images/get-started-app.png)

Add the default `login` as the allowed up-party in your down-party application.


> It is possible to add more up-parties to federate with [external Identity Providers (IdPs)](howto-connect.md#up-party---how-to-connect-identity-provider-idp). Thereafter, a new up-party can be added to your down-party application.

### Sample application
The [sample applications](samples.md) can be found in the [samples repository](https://github.com/ITfoxtec/FoxIDs.Samples).

The samples contains a configuration [seed tool](samples.md#configure-the-sample-seed-tool) which is used to configure all the samples in the `test` track or another track.

After successfully configuring the samples a good starting point is the [AspNetCoreOidcAuthCodeAllUpPartiesSample](samples.md#aspnetcoreoidcauthcodealluppartiessample) web application.
You need to update the tenant and track configuration in the `appsettings.json` config file and thereafter the sample should work.
83 changes: 0 additions & 83 deletions docs/getting-started.md

This file was deleted.

Loading

0 comments on commit 0433ccd

Please sign in to comment.