-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
GITBOOK-644: Enrolling to Intune-managed Linux devices
- Loading branch information
1 parent
55172b8
commit fbe2be0
Showing
25 changed files
with
601 additions
and
161 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 35 additions & 0 deletions
35
docs/.gitbook/includes/enrollment-rest-api-app-registration.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
--- | ||
title: Enrollment REST API - App Registration | ||
--- | ||
|
||
{% stepper %} | ||
{% step %} | ||
## App Registration | ||
|
||
Create a new _App Registration_ that describes your use case. You application will authenticate as this application against SCEPman. | ||
{% endstep %} | ||
|
||
{% step %} | ||
## API Permission | ||
|
||
Assign the required permissions by running the **Register-SCEPmanApiClient** cmdlet from the SCEPman PowerShell module. | ||
|
||
Example:  | ||
|
||
```powershell | ||
Register-SCEPmanApiClient -ServicePrincipalId 830532c6-9f7b-4bc8-8f3e-43443344ab2d | ||
``` | ||
|
||
### ServicePrincipalId | ||
|
||
The _**Object ID**_ of the complementing _**Enterprise Application**_ of the App Registration we created in the previous step. Note that this does not refer to the Enterprise Application usually named SCEPman-api, which identifies SCEPman itself. | ||
|
||
To manually assign this permission you can navigate to _API Permissions_ and add a permission from the _permissions your organization uses_. Assign the _**CSR.Request.Db**_ permission from _**SCEPman-api**_ as an _application permission_. | ||
{% endstep %} | ||
|
||
{% step %} | ||
## Client Secret | ||
|
||
Create a client secret as a password to authenticate the application later. | ||
{% endstep %} | ||
{% endstepper %} |
39 changes: 39 additions & 0 deletions
39
docs/.gitbook/includes/enrollment-rest-api-app-service-settings.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
--- | ||
title: Enrollment REST API - App Service Settings | ||
--- | ||
|
||
### Configuration | ||
|
||
_Required for certificate renewal_ | ||
|
||
Configure your SCEPman App Service to accept mTLS client certificates. In the Configuration blade of the Settings section, verify that the Client certificate mode in Incoming client certificates is set to _**Optional**_. | ||
|
||
<figure><img src="../assets/image (75).png" alt=""><figcaption></figcaption></figure> | ||
|
||
Do not set the Client certificate mode to Require or Allow, as that would break normal operation of SCEPman on the SCEP endpoints! | ||
|
||
|
||
|
||
### Environment Variables | ||
|
||
In order to make use of this scenario, you must set the following Environment Variables on the SCEPman app service. | ||
|
||
### [AppConfig:DbCSRValidation:Enabled](https://docs.scepman.com/advanced-configuration/application-settings/dbcsr-validation#appconfig-dbcsrvalidation-enabled) | ||
|
||
_Required for certificate enrollment and renewal_ | ||
|
||
Set this variable to _**true**_ to enable the validation of certificate signing requests (CSRs). | ||
|
||
### [AppConfig:DbCSRValidation:AllowRenewals](https://docs.scepman.com/advanced-configuration/application-settings/dbcsr-validation#appconfig-dbcsrvalidation-allowrenewals) | ||
|
||
_Required for certificate renewal_ | ||
|
||
Set this variable to _**true**_ to enable certificate renewals. | ||
|
||
### [AppConfig:DbCSRValidation:ReenrollmentAllowedCertificateTypes](https://docs.scepman.com/advanced-configuration/application-settings/dbcsr-validation#appconfig-dbcsrvalidation-reenrollmentallowedcertificatetypes) | ||
|
||
_Required for certificate renewal_ | ||
|
||
Set this variable to a comma separated list of certificate types that you want to allow the renewal. See the linked variable documentation for a list of possible certificate types. | ||
|
||
Example: _**Static,IntuneUser,IntuneDevice**_ |
17 changes: 17 additions & 0 deletions
17
docs/.gitbook/includes/enrollment-rest-api-client-prerequisites.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
--- | ||
title: Enrollment REST API - Client Prerequisites | ||
--- | ||
|
||
The following prerequisites must be present on the executing client/host to be able to use the Enrollment REST API. | ||
|
||
### [**Azure CLI**](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli) **( version 2.61 and above)** | ||
|
||
The Azure CLI is used to authenticate the enrolling user to check their eligibility and to retrieve the access token. | ||
|
||
### cURL | ||
|
||
Used to send the created CSR to the SCEPman Enrollment API Endpoint and receive certificate. | ||
|
||
### OpenSSL | ||
|
||
OpenSSL is used to generate a private key and create a CSR for enrolling or renewing a certificate. |
9 changes: 9 additions & 0 deletions
9
docs/.gitbook/includes/enrollment-rest-api-self-service-enrollment.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
--- | ||
title: Enrollment REST API - Self Service Enrollment | ||
--- | ||
|
||
To enroll certificates, users must be authenticated to verify their eligibility. Follow this guide for step-by-step instructions on how to set this up | ||
|
||
{% content-ref url="../../certificate-deployment/api-certificates/self-service-enrollment.md" %} | ||
[self-service-enrollment.md](../../certificate-deployment/api-certificates/self-service-enrollment.md) | ||
{% endcontent-ref %} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,16 @@ | ||
# Enrollment REST API | ||
|
||
{% hint style="info" %} | ||
This feature requires version **2.3.689** or above. | ||
{% endhint %} | ||
|
||
{% hint style="warning" %} | ||
SCEPman Enterprise Edition only | ||
{% endhint %} | ||
|
||
SCEPman features a REST API to enroll certificates. This is an alternative to the SCEP endpoints that require the SCEP-style of authentication, while the REST API uses Microsoft Identities for authentication. The protocol is also much simpler than SCEP. | ||
|
||
You need to add a service identity to the Role _CSR.Request.Db_ of the Enterprise App _scepman-api_. If this role does not exist yet but only CSR.Request, you must run the CMDlet Complete-ScepmanInstallation from the [SCEPman Powershell Module (at least version 1.8.10)](https://www.powershellgallery.com/packages/SCEPman) once again to get it. The service identity is then permitted to use the SCEPman certificate enrollment REST API. The easiest way to add a service identity to this role is to call `Register-SCEPmanApiClient -ServicePrincipalId 00000000-0000-0000-0000-000000000000 6>&1` from the [SCEPman PowerShell module](https://www.powershellgallery.com/packages/SCEPman/) version 1.10 and above, where _00000000-0000-0000-0000-000000000000_ in the example is the Object Id of your service principal (e.g. Managed Identity or Enterprise Application). | ||
|
||
In SCEPman, you must enabling the feature by setting [AppConfig:DbCSRValidation:Enabled](../../scepman-configuration/optional/application-settings/dbcsr-validation.md) to _true_. | ||
|
||
Then you can POST a PKCS#10/CMS to your SCEPman with the HTTP path _api/csr_. The HTTP Response will be the freshly issued certificate in DER encoding. | ||
|
||
SCEPman will store all issued certificates automatically in its Storage Account, so you can conveniently list and revoke them via the Certificate Master component. | ||
See our use cases for step-by-step guides on how to use this feature: | ||
|
||
## Examples | ||
{% content-ref url="../../use-cases.md" %} | ||
[use-cases.md](../../use-cases.md) | ||
{% endcontent-ref %} | ||
|
||
See our [Open Source Sample Library on GitHub](https://github.com/scepman/csr-request) to find out how to use SCEPman's REST API. |
36 changes: 36 additions & 0 deletions
36
docs/certificate-deployment/api-certificates/api-enrollment.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# API Enrollment | ||
|
||
{% hint style="info" %} | ||
This feature requires version **2.3.689** or above. | ||
{% endhint %} | ||
|
||
{% hint style="warning" %} | ||
SCEPman Enterprise Edition only | ||
{% endhint %} | ||
|
||
SCEPman features a REST API to enroll certificates. This is an alternative to the SCEP endpoints that require the SCEP-style of authentication, while the REST API uses Microsoft Identities for authentication. The protocol is also much simpler than SCEP. | ||
|
||
## Prerequisites | ||
|
||
### 1. Service Principal | ||
|
||
{% include "../../.gitbook/includes/enrollment-rest-api-app-registration.md" %} | ||
|
||
### 2. App Service Settings | ||
|
||
{% include "../../.gitbook/includes/enrollment-rest-api-app-service-settings.md" %} | ||
|
||
|
||
|
||
## Enrolling certificates | ||
|
||
After you have prepared the prerequisites, you can POST a PKCS#10/CMS to your SCEPman with the HTTP path _api/csr_. The HTTP Response will be the freshly issued certificate in DER encoding. | ||
|
||
SCEPman will store all issued certificates automatically in its Storage Account, so you can conveniently list and revoke them via the Certificate Master component. | ||
|
||
|
||
|
||
## Examples | ||
|
||
See our [Open Source Sample Library on GitHub](https://github.com/scepman/csr-request) to find out how to use SCEPman's REST API. | ||
|
34 changes: 0 additions & 34 deletions
34
docs/certificate-deployment/api-certificates/linux-enrollment-guide.md
This file was deleted.
Oops, something went wrong.
106 changes: 0 additions & 106 deletions
106
docs/certificate-deployment/api-certificates/renewal-script.md
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.