Skip to content

Commit fdafc69

Browse files
authoredFeb 23, 2024
Update 2024-02-20-net-scim.md
1 parent 2e65268 commit fdafc69

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed
 

‎_source/_posts/2024-02-20-net-scim.md

+9-10
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ tweets:
1212
- ""
1313
image: blog/net-scim/social.jpg
1414
type: awareness
15+
github: https://github.com/oktadev/okta-net-scim-example
1516
---
1617

1718
Several challenges exist in provisioning users for a growing company across systems and applications. It can be time-consuming, error-prone, challenging to sync users across domains, and potentially a security risk to keep track of existing profiles. Fortunately, a protocol called SCIM (System for Cross-domain Identity Management) standardizes user information across systems, making it possible to sync users. Also, combined with a SCIM-compliant Identity Provider (IdP), it securely automates common user lifecycle operations.
@@ -31,11 +32,9 @@ There are two primary components for a SCIM integration. The first is the *SCIM
3132
- [Okta CLI](https://cli.okta.com/)
3233

3334
### Create a .NET project
34-
- Open a new terminal window (within VS Code)
35-
- Create a new folder named *okta-scim-server-dotnet* using the command `mkdir okta-scim-server-dotnet`
36-
- Switch into this folder using the command `cd okta-scim-server-dotnet`
37-
- Create a new API project using the command `dotnet new webapi`
38-
- Trust the self-signed TLS certs using the command `dotnet dev-certs https --trust`
35+
Create a directory called `okta-scim-server-dotnet`. Navigate to the directory in your terminal, then run the following commands:
36+
- `dotnet new webapi` (Creates a new API project)
37+
- `dotnet dev-certs https --trust` (Trust the self-signed TLS certs)
3938

4039
### Test the .NET project using Swagger UI
4140
- Run the project using the command `dotnet watch --launch-profile https`
@@ -278,7 +277,7 @@ We can then migrate the coded database models and data into the actual database.
278277
- Prepare db migration by running `dotnet ef migrations add InitialScimDb`
279278
- Apply these changes to db by running `dotnet ef database update`. This command would have created a file named `scim-dev.db` in your project folder.
280279
- *Optional:* Test db creation using the command line tool,
281-
- You should have sqllite3 client installed. (I had this OOB in Mac OS)
280+
- You should have [sqlite3](https://www.sqlite.org/index.html) client installed. (I had this our of the box in Mac OS)
282281
- Connect using`sqlite3 <<Path to sqlite file>>/scim-dev.db`
283282
- List tables using `.tables`
284283
- List users by running `select * from Users;`
@@ -1883,12 +1882,12 @@ Let's look at one more scenario. Let's say not only has Tom returned, but he als
18831882

18841883
In the Okta Admin Console sidebar, navigate to **Directory** > **People**, and click on Tom's name in the user list to edit their settings. In the **Profile** tab, click **Edit** in the **Attributes** pane. Change the `firstName` field to "Leo", and update their `login` and `email` to `leo.anderson@fake.domain`. Use the **Save** button at the bottom of the page to save your changes. Again, on the Swagger UI, double-check Tom's updated name by making a GET /scim/v2/users request to list all current users.
18851884

1886-
## Troubleshooting tip:
1885+
**Troubleshooting tip**
18871886

1888-
If you are experiencing import issues with Okta, double-check to see that your previous SCIM base URL is not cached under the Provisioning > Integration tab. If it is cached, requests will not be made to your .NET SCIM server.
1887+
If you are experiencing import issues with Okta, double-check that your previous SCIM base URL is not cached under the Provisioning > Integration tab. If it is cached, requests will not be made to your .NET SCIM server.
18891888

18901889
## Next steps - more exploration
1891-
- You can get the complete sample code for this .NET SCIM Server project from [GitHub].
1890+
- You can get the complete sample code for this .NET SCIM Server project from [GitHub](https://github.com/oktadev/okta-net-scim-example).
18921891
- Inspect traffic to see the contents of request/response. If you use ngrok, you can use http://localhost:4040
18931892
- Now you can add more users, update users, or remove users and explore more SCIM interactions
18941893
- You can extend resources supported by adding groups
@@ -1906,4 +1905,4 @@ You can further manage your users and groups using Terraform or Workflows:
19061905
- [Enterprise Maturity Workshop: Terraform](/blog/2023/07/28/terraform-workshop)
19071906
- [Enterprise Ready Workshop: Automate with no-code Okta Workflows](/blog/2023/09/15/workflows-workshop)
19081907

1909-
Excited to learn more about creating secure .NET apps? Follow us on [Twitter](https://twitter.com/oktadev) and subscribe to our [YouTube](https://www.youtube.com/c/oktadev) channel. If you have any questions or you want to share what tutorial you'd like to see next, please comment below!
1908+
Excited to learn more about creating secure .NET apps? Follow us on [Twitter](https://twitter.com/oktadev) and subscribe to our [YouTube](https://www.youtube.com/c/oktadev) channel. If you have any questions or you want to share what tutorial you'd like to see next, please comment below!

0 commit comments

Comments
 (0)