Skip to content

Commit

Permalink
Fix spelling errors jun 18 2024 round 2 (FusionAuth#3126)
Browse files Browse the repository at this point in the history
* have db table be shown as code so that spellcheck doesn't barf on the all the hash strings

* more known words

* Added index pages to these integrations sections, mostly so the title would be cased correctly

* fixed typos
  • Loading branch information
mooreds authored Jun 18, 2024
1 parent 4040a43 commit 4f82ba2
Show file tree
Hide file tree
Showing 8 changed files with 100 additions and 13 deletions.
46 changes: 45 additions & 1 deletion .github/knownwords.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3078,4 +3078,48 @@ MailDev
unscoped
scopeHandlingPolicy
GIS

playtronics
unknownScopePolicy
userinfoPopulateLambda
defaultConsentDetail
defaultConsentMessage
ldapsearch
forgerock
DBeaver
DaVinci
passcodes
backfill
overridable
unconfigured
awoodobvio
ashutoshningot
mou
charlesericjs
badaz
themobi
JNDI
CIDR
fuzzers
ATest
AwesomeCRM
CRO
ClownShoes
NetSuite
WebhookTransactionException
PRs
HCL
Hashicorp
Provisioners
provisioners
deletable
randomBytes
randomAlphaNumeric
randomDigits
OnCollision
crossPlatform
signatureConfiguration
asc
redirectUri
registrationVerificationOneTimeCode
CreatePendingLink
UseRedirect
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ _Response Codes_
|------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 200 | The authentication was successful. The response will contain the User object that was authenticated. |
| 202 | The user was authenticated successfully. The user is not registered for the application specified by `applicationId` on the request.<br/>The response will contain the User object that was authenticated. |
| 203 | The user was authenticated successfully. The user is required to change their password, the response will contain the `changePasswordId` to be usedon the [Change Password](/docs/apis/users#change-a-users-password) API.<br/><JSON title="Example Response JSON" src="login/login-change-password-response.json" /><br/> |
| 203 | The user was authenticated successfully. The user is required to change their password, the response will contain the `changePasswordId` to be used on the [Change Password](/docs/apis/users#change-a-users-password) API.<br/><JSON title="Example Response JSON" src="login/login-change-password-response.json" /><br/> |
| 204 | The login is pending action by the end user. Wait and try the request again. |
| 212 | The user's email address has not yet been verified. The response will contain the User object that was authenticated. If the verification strategy has been set to `FormField`, the response will contain the <InlineField>emailVerificationId</InlineField> that was generated for the user. |
| 213 | The user's registration has not yet been verified. The response will contain the User object that was authenticated. If the verification strategy has been set to `FormField`, the response will contain the <InlineField>registrationVerificationId</InlineField> that was generated for the user.<br/>Prior to version `1.27.0`, this status code was not returned, and you will see a `200` instead. |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ You may optionally utilize a lambda to customize the user and user registration

{props.extra_text !== "" ? <p>{props.extra_text}</p> : ""}

When you create a new lambda using the FusionAuth adminstrative user interface, you will be provided an empty function to implement.
When you create a new lambda using the FusionAuth administrative user interface, you will be provided an empty function to implement.

Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Overview
description: Examples of OIDC integrations.
navcategory: login-methods
section: lifecycle
subcategory: authenticate users
tertcategory: integrations
quatercategory: oidc
topOfNav: true
---

While OpenID Connect (OIDC) is a standard and is broadly interoperable, this section contains examples of integrations where external applications delegate to FusionAuth for user authentication.

## Examples

* [CockroachDB](/docs/lifecycle/authenticate-users/integrations/oidc/cockroachdb)
* [Salesforce](/docs/lifecycle/authenticate-users/integrations/oidc/salesforce)

This is not the limit of supported OIDC Relying Parties (RPs). The FusionAuth community has integrated FusionAuth with many others. If you have questions about support for a specific RP, please [contact us](/contact).
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: Overview
description: Examples of SAMLv2 integrations.
navcategory: login-methods
section: lifecycle
subcategory: authenticate users
tertcategory: integrations
quatercategory: saml
---

While Security Assertion Markup Language (SAMLv2) is a standard and is broadly interoperable, this section contains examples of integrations where external applications delegate to FusionAuth for user authentication.

## Examples

* [Aiven](/docs/lifecycle/authenticate-users/integrations/saml/aiven)
* [Google](/docs/lifecycle/authenticate-users/integrations/saml/google)
* [Pagerduty](/docs/lifecycle/authenticate-users/integrations/saml/pagerduty)
* [SendGrid](/docs/lifecycle/authenticate-users/integrations/saml/sendgrid)
* [Tableau Cloud](/docs/lifecycle/authenticate-users/integrations/saml/tableau-cloud)
* [Zendesk](/docs/lifecycle/authenticate-users/integrations/saml/zendesk)

This is not the limit of supported SAML Service Providers (SPs). The FusionAuth community has integrated FusionAuth with many others. If you have questions about support for a specific SP, please [contact us](/contact).
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ All entities have a [UUID](/docs/reference/data-types#uuids) identifier. This Id

If you haven't already done so, ensure FusionAuth will work with your application or applications. You can [install it in about five minutes](/docs/quickstarts/5-minute-setup-guide) and build a prototype.

A protoype is helpful in determining which [login method](/docs/get-started/core-concepts/integration-points#login-options) you should use and how to [theme the hosted login pages](/docs/customize/look-and-feel/) to maintain your application's look and feel.
A prototype is helpful in determining which [login method](/docs/get-started/core-concepts/integration-points#login-options) you should use and how to [theme the hosted login pages](/docs/customize/look-and-feel/) to maintain your application's look and feel.

FusionAuth assigns users roles. A user's roles are available in API responses and in the [JWT (JSON Web Token)](/docs/lifecycle/authenticate-users/login-api/json-web-tokens) sent to client applications after successful user authentication. You may need to update your application to look at the `roles` claim to allow or disallow functionality within an application.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ export const script_supports_social_logins = 'true';

This document will help you migrate users from Stytch to FusionAuth.

There are a number of different ways applications can be integrated with Stych, and it would be difficult to cover them all. This guide is a low-level, technical tutorial focusing on transferring password hashes, calling APIs, and preparing data when migrating users from a Consumer Authentication project. The steps outlined here have not been tested with the Stytch B2B SaaS Authentication project type.
There are a number of different ways applications can be integrated with Stytch, and it would be difficult to cover them all. This guide is a low-level, technical tutorial focusing on transferring password hashes, calling APIs, and preparing data when migrating users from a Consumer Authentication project. The steps outlined here have not been tested with the Stytch B2B SaaS Authentication project type.

This guide explains how to import passwords into FusionAuth, but does not deal with other Stytch authentication types like magic links, passkeys, passcodes, mobile biometrics, two-factor authentication, and social logins such as Google OAuth.

Expand Down Expand Up @@ -104,7 +104,7 @@ Create three example users:
- If any errors occur and you need to delete the users, uncomment the lines with `client.users.delete`, set the user Ids from the dashboard, and rerun the script.

<Aside type="note">
The `1_makeStytchUsers.mjs` file uses the Stytch JavaScript SDK to create users with three different hashing algorithms. However, the line `client.passwords.authenticate` provides the cleartext password to Stytch, which Stytch uses to rehash the user password using the Scrypt hashing algorithm. At the end of this script, all your users' passwords will be hashed with Scrypt in the Stytch database.
The `1_makeStytchUsers.mjs` file uses the Stytch JavaScript SDK to create users with three different hashing algorithms. However, the line `client.passwords.authenticate` provides the clear text password to Stytch, which Stytch uses to rehash the user password using the Scrypt hashing algorithm. At the end of this script, all your users' passwords will be hashed with Scrypt in the Stytch database.
Even though you can create passwords for Stytch users with different hashing algorithms ([bcrypt, scrypt, Argon2, MD5, SHA-1, or PBKDF2](https://stytch.com/docs/api/password-migrate)), scrypt is the Stytch-preferred algorithm. Whenever a user logs in, Stytch will verify their password hash using the algorithm it is currently stored with, and then rehash their password using scrypt and discard the old hash. Password rehashing is a common technique used to upgrade security as hashing algorithms evolve.
Expand Down Expand Up @@ -215,7 +215,7 @@ The last lines of the object show the hash and salt that the script added from t

## Importing Users

First install a FusionAth plugin to handle the Stytch password hash algorithm, then import the users, and finally verify the import.
First install a FusionAuth plugin to handle the Stytch password hash algorithm, then import the users, and finally verify the import.

### Build The Scrypt Password Hash Plugin For FusionAuth

Expand Down Expand Up @@ -273,13 +273,13 @@ If you are not already running FusionAuth or want to test this process on anothe
cd stytch/fusionAuthDockerFiles
docker compose up
```
- FusionAuth will now be running and browsable at `http://localhost:9011`. You can log in with `[email protected]` and `password`. The container is called `fa`.
- FusionAuth will now be running and browseable at `http://localhost:9011`. You can log in with `[email protected]` and `password`. The container is called `fa`.
- Open a terminal in the `fusionauth-contrib` root directory, where you built the plugin. Run the commands below to copy the JAR file into the FusionAuth container `plugins` directory.
```sh
docker exec fa mkdir /usr/local/fusionauth/plugins
docker cp "Password Hashing Plugins/target/fusionauth-example-password-encryptor-0.1.0.jar" fa:/usr/local/fusionauth/plugins/fusionauth-example-password-encryptor-0.1.0.jar
```
- Finally, restart FusionAuth for it to detect the plugin. In the terminal where FusionAuth is running in Docker, press Ctrl + C to stop it, wait, and run `docker compose up` again.
- Finally, restart FusionAuth for it to detect the plugin. In the terminal where FusionAuth is running in Docker, press `control-C` to stop it, wait, and run `docker compose up` again.
### Save The User Details And Hash To FusionAuth
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -146,10 +146,12 @@ WordPress has two tables related to users: `wp_users` and `wp_usermeta`.

In `wp_users`, you will have data similar to the example below. This table holds identifiers and a password hash for each user.

ID|user_login|user_pass |user_nicename|user_email |user_url |user_registered |user_activation_key |user_status|display_name|
---|----------|----------------------------------|-------------|----------------|----------------|-----------------------|---------------------------------------------|-----------|------------
1|user |\$P$BVrdsW/NUuXDi0Od0uUdk2SnJHHmQ01|user |user@example.com|http://127.0.0.1|2024-02-21 07:09:20.000| | 0|user |
2|richard |\$P$B/kCzTMDV7ccClaRShJPz8suWQdKc5/|richard |richard@example.com | |2024-02-21 10:52:53.000|1708512773:\$P$BYELgLl.oz9lv.YRNp7ppBA1GxzOEY0| 0|a |
```
ID |user_login|user_pass |user_nicename|user_email |user_url |user_registered |user_activation_key |user_status|display_name|
---|----------|----------------------------------|-------------|----------------------|----------------|------------------------|----------------------------------------------|-----------|------------
1 |user |$P$BVrdsW/NUuXDi0Od0uUdk2SnJHHmQ01|user |[email protected]| http://127.0.0.1 |2024-02-21 07:09:20.000 | | 0|user |
2 |richard |$P$B/kCzTMDV7ccClaRShJPz8suWQdKc5/|richard |[email protected] | |2024-02-21 10:52:53.000 |1708512773:\$P$BYELgLl.oz9lv.YRNp7ppBA1GxzOEY0| 0|a |
```

Unfortunately, neither the [WordPress Codex](https://codex.wordpress.org/Database_Description) nor the [WordPress Developer Handbook](https://developer.wordpress.org) gives definitions of the database fields and their meanings. To be certain of their purpose, you would need to read the WordPress source code, but the column definitions below seem obvious enough to trust.

Expand Down

0 comments on commit 4f82ba2

Please sign in to comment.