Skip to content

Commit f48f705

Browse files
Merge branch 'main' into asr-gitIssues
2 parents 63b2dc2 + 518ad9a commit f48f705

File tree

136 files changed

+1107
-662
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

136 files changed

+1107
-662
lines changed
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
---
2+
title: Azure Active Directory SSO integration with Descartes
3+
description: Learn how to configure single sign-on between Azure Active Directory and Descartes.
4+
services: active-directory
5+
author: jeevansd
6+
manager: CelesteDG
7+
ms.reviewer: CelesteDG
8+
ms.service: active-directory
9+
ms.subservice: saas-app-tutorial
10+
ms.workload: identity
11+
ms.topic: how-to
12+
ms.date: 01/16/2023
13+
ms.author: jeedes
14+
15+
---
16+
17+
# Azure Active Directory SSO integration with Descartes
18+
19+
In this article, you'll learn how to integrate Descartes with Azure Active Directory (Azure AD). The Descartes application provides logistics information services to delivery sensitive companies around the world. As an integrated suite it provides modules for various logistics business roles. When you integrate Descartes with Azure AD, you can:
20+
21+
* Control in Azure AD who has access to Descartes.
22+
* Enable your users to be automatically signed-in to Descartes with their Azure AD accounts.
23+
* Manage your accounts in one central location - the Azure portal.
24+
25+
You'll configure and test Azure AD single sign-on for Descartes in a test environment. Descartes supports both **SP** and **IDP** initiated single sign-on and also supports **Just In Time** user provisioning.
26+
27+
> [!NOTE]
28+
> Identifier of this application is a fixed string value so only one instance can be configured in one tenant.
29+
30+
## Prerequisites
31+
32+
To integrate Azure Active Directory with Descartes, you need:
33+
34+
* An Azure AD user account. If you don't already have one, you can [Create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F).
35+
* One of the following roles: Global Administrator, Cloud Application Administrator, Application Administrator, or owner of the service principal.
36+
* An Azure AD subscription. If you don't have a subscription, you can get a [free account](https://azure.microsoft.com/free/).
37+
* Descartes single sign-on (SSO) enabled subscription.
38+
39+
## Add application and assign a test user
40+
41+
Before you begin the process of configuring single sign-on, you need to add the Descartes application from the Azure AD gallery. You need a test user account to assign to the application and test the single sign-on configuration.
42+
43+
### Add Descartes from the Azure AD gallery
44+
45+
Add Descartes from the Azure AD application gallery to configure single sign-on with Descartes. For more information on how to add application from the gallery, see the [Quickstart: Add application from the gallery](../manage-apps/add-application-portal.md).
46+
47+
### Create and assign Azure AD test user
48+
49+
Follow the guidelines in the [create and assign a user account](../manage-apps/add-application-portal-assign-users.md) article to create a test user account in the Azure portal called B.Simon.
50+
51+
Alternatively, you can also use the [Enterprise App Configuration Wizard](https://portal.office.com/AdminPortal/home?Q=Docs#/azureadappintegration). In this wizard, you can add an application to your tenant, add users/groups to the app, and assign roles. The wizard also provides a link to the single sign-on configuration pane in the Azure portal. [Learn more about Microsoft 365 wizards.](/microsoft-365/admin/misc/azure-ad-setup-guides).
52+
53+
## Configure Azure AD SSO
54+
55+
Complete the following steps to enable Azure AD single sign-on in the Azure portal.
56+
57+
1. In the Azure portal, on the **Descartes** application integration page, find the **Manage** section and select **single sign-on**.
58+
1. On the **Select a single sign-on method** page, select **SAML**.
59+
1. On the **Set up single sign-on with SAML** page, select the pencil icon for **Basic SAML Configuration** to edit the settings.
60+
61+
![Screenshot shows how to edit Basic SAML Configuration.](common/edit-urls.png "Basic Configuration")
62+
63+
1. On the **Basic SAML Configuration** section, the user doesn't have to perform any step as the app is already pre-integrated with Azure.
64+
65+
1. If you want to configure **SP** initiated SSO, then perform the following step:
66+
67+
In the **Relay State** textbox, type the URL:
68+
`https://auth.gln.com/Welcome`
69+
70+
1. Descartes application expects the SAML assertions in a specific format, which requires you to add custom attribute mappings to your SAML token attributes configuration. The following screenshot shows the list of default attributes.
71+
72+
![Screenshot shows the image of attributes configuration.](common/default-attributes.png "Image")
73+
74+
1. In addition to above, Descartes application expects few more attributes to be passed back in SAML response, which are shown below. These attributes are also pre populated but you can review them as per your requirements.
75+
76+
| Name | Source Attribute|
77+
| ---------------| --------- |
78+
| telephone | user.telephonenumber |
79+
| facsimiletelephonenumber | user.facsimiletelephonenumber |
80+
| ou | user.department |
81+
| assignedRoles | user.assignedroles |
82+
| Group | user.groups |
83+
84+
1. On the **Set up single sign-on with SAML** page, in the **SAML Signing Certificate** section, click copy button to copy **App Federation Metadata Url** and save it on your computer.
85+
86+
![Screenshot shows the Certificate download link.](common/copy-metadataurl.png "Certificate")
87+
88+
1. Compose a list of the Azure AD Groups you want the Descartes Application use for the Role-based configuration. A list of User Roles Descartes application modules can be found at https://www.gln.com/docs/Descartes_Application_User_Roles.pdf. You can find the Azure Active Direction Group GUIDs please download the Groups from your Azure AD Portal Groups.
89+
90+
![Screenshot shows the AAD Portal Groups.](media/descartes-tutorial/copy-groups.png "Groups")
91+
92+
You can load this CSV file in Excel. Please select the groups that you want map to the Descartes application roles by list the ID in the first column and associating it with the Descartes Application User Role.
93+
94+
## Configure Descartes SSO
95+
96+
To configure single sign-on on **Descartes** side, you need to email the following values to the [Descartes support team](mailto:[email protected]). Please use the subject Azure AD SSO Setup request as the subject.
97+
98+
1. The preferred identity domain suffix (often the same as the E-mail domain suffix).
99+
1. The App Federation Metadata URL.
100+
1. A list with the Azure AD Group GUIDs for users entitled to use the Descartes application.
101+
102+
Descartes will use the information in the E-mail to have the SAML SSO connection set properly on the application side.
103+
104+
An example of such a request below:
105+
106+
![Screenshot shows the example of the request.](media/descartes-tutorial/example.png "Request")
107+
108+
### Create Descartes test user
109+
110+
In this section, a user called B.Simon is created in Descartes. Descartes supports just-in-time user provisioning, which is enabled by default. There's no action item for you in this section. If a user doesn't already exist in Descartes, a new one is commonly created after authentication.
111+
112+
Descartes application use domain qualified usernames for your Azure AD integrated users. The domain qualified usernames consist of the SAML claim subject and will always end with the domain suffix. Descartes recommends selecting your companies E-mail domain suffix all users in the domain have in common as the identity domain suffix (example [email protected]).
113+
114+
## Test SSO
115+
116+
In this section, you test your Azure AD single sign-on configuration with following options.
117+
118+
#### SP initiated:
119+
120+
* Click on **Test this application** in Azure portal. This will redirect to Descartes Sign-on URL where you can initiate the login flow. Alternatively you can use a 'deep link' URL into a specific module of the Descartes application, and you will be redirected to a page to provide your domain qualified username which will lead you to your Azure AD login dialog.
121+
122+
* Go to Descartes application direct access URL provided and initiate the login flow by specifying your domain qualified username ([email protected]) in the application login window. This will redirect the user automatically to Azure AD.
123+
124+
#### IDP initiated:
125+
126+
* Click on **Test this application** in Azure portal and you should be automatically signed in to the Descartes application menu for which you set up the SSO.
127+
128+
* You can also use Microsoft My Apps to test the application in any mode. When you click the Descartes tile in the My Apps, if configured in SP mode you would be redirected to the application sign-on page for initiating the login flow and if configured in IDP mode, you should be automatically signed in to the Descartes for which you set up the SSO. For more information about the My Apps, see [Introduction to the My Apps](../user-help/my-apps-portal-end-user-access.md).
129+
130+
## Additional resources
131+
132+
* [What is single sign-on with Azure Active Directory?](../manage-apps/what-is-single-sign-on.md)
133+
* [Plan a single sign-on deployment](../manage-apps/plan-sso-deployment.md).
134+
135+
## Next steps
136+
137+
Once you configure Descartes you can enforce session control, which protects exfiltration and infiltration of your organization’s sensitive data in real time. Session control extends from Conditional Access. [Learn how to enforce session control with Microsoft Cloud App Security](/cloud-app-security/proxy-deployment-aad).
118 KB
Loading
159 KB
Loading

articles/active-directory/saas-apps/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -664,6 +664,8 @@
664664
href: degreed-tutorial.md
665665
- name: Deputy
666666
href: deputy-tutorial.md
667+
- name: Descartes
668+
href: descartes-tutorial.md
667669
- name: desknet's NEO
668670
href: desknets-neo-tutorial.md
669671
- name: Deskradar

articles/aks/azure-disk-customer-managed-keys.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ Use the DiskEncryptionSet and resource groups you created on the prior steps, an
6868

6969
```azurecli-interactive
7070
# Retrieve the DiskEncryptionSet value and set a variable
71-
$desIdentity=az disk-encryption-set show -n myDiskEncryptionSetName -g myResourceGroup --query "[identity.principalId]" -o tsv
71+
desIdentity=$(az disk-encryption-set show -n myDiskEncryptionSetName -g myResourceGroup --query "[identity.principalId]" -o tsv)
7272
7373
# Update security policy settings
7474
az keyvault set-policy -n myKeyVaultName -g myResourceGroup --object-id $desIdentity --key-permissions wrapkey unwrapkey get
@@ -83,7 +83,7 @@ Create a **new resource group** and AKS cluster, then use your key to encrypt th
8383
8484
```azurecli-interactive
8585
# Retrieve the DiskEncryptionSet value and set a variable
86-
$diskEncryptionSetId=az disk-encryption-set show -n mydiskEncryptionSetName -g myResourceGroup --query "[id]" -o tsv
86+
diskEncryptionSetId=$(az disk-encryption-set show -n mydiskEncryptionSetName -g myResourceGroup --query "[id]" -o tsv)
8787
8888
# Create a resource group for the AKS cluster
8989
az group create -n myResourceGroup -l myAzureRegionName

articles/aks/best-practices.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,19 @@ ms.date: 03/09/2021
99

1010
# Cluster operator and developer best practices to build and manage applications on Azure Kubernetes Service (AKS)
1111

12-
Building and running applications successfully in Azure Kubernetes Service (AKS) require understanding and implementation of some key considerations, including:
12+
Building and running applications successfully in Azure Kubernetes Service (AKS) requires understanding and implementation of some key concepts, including:
1313

1414
* Multi-tenancy and scheduler features.
1515
* Cluster and pod security.
1616
* Business continuity and disaster recovery.
1717

18-
The AKS product group, engineering teams, and field teams (including global black belts [GBBs]) contributed to, wrote, and grouped the following best practices and conceptual articles. Their purpose is to help cluster operators and developers understand the considerations above and implement the appropriate features.
18+
The AKS product group, engineering teams, and field teams (including global black belts [GBBs]) contributed to, wrote, and grouped the following best practices and conceptual articles. Their purpose is to help cluster operators and developers better understand the concepts above and implement the appropriate features.
1919

2020
## Cluster operator best practices
2121

22-
As a cluster operator, work together with application owners and developers to understand their needs. You can then use the following best practices to configure your AKS clusters as needed.
22+
If you're a cluster operator, work with application owners and developers to understand their needs. Then, you can use the following best practices to configure your AKS clusters to fit your needs.
2323

24-
**Multi-tenancy**
24+
### Multi-tenancy
2525

2626
* [Best practices for cluster isolation](operator-best-practices-cluster-isolation.md)
2727
* Includes multi-tenancy core components and logical isolation with namespaces.
@@ -32,7 +32,7 @@ As a cluster operator, work together with application owners and developers to u
3232
* [Best practices for authentication and authorization](operator-best-practices-identity.md)
3333
* Includes integration with Azure Active Directory, using Kubernetes role-based access control (Kubernetes RBAC), using Azure RBAC, and pod identities.
3434

35-
**Security**
35+
### Security
3636

3737
* [Best practices for cluster security and upgrades](operator-best-practices-cluster-security.md)
3838
* Includes securing access to the API server, limiting container access, and managing upgrades and node reboots.
@@ -41,30 +41,30 @@ As a cluster operator, work together with application owners and developers to u
4141
* [Best practices for pod security](developer-best-practices-pod-security.md)
4242
* Includes securing access to resources, limiting credential exposure, and using pod identities and digital key vaults.
4343

44-
**Network and storage**
44+
### Network and storage
4545

4646
* [Best practices for network connectivity](operator-best-practices-network.md)
4747
* Includes different network models, using ingress and web application firewalls (WAF), and securing node SSH access.
4848
* [Best practices for storage and backups](operator-best-practices-storage.md)
4949
* Includes choosing the appropriate storage type and node size, dynamically provisioning volumes, and data backups.
5050

51-
**Running enterprise-ready workloads**
51+
### Running enterprise-ready workloads
5252

5353
* [Best practices for business continuity and disaster recovery](operator-best-practices-multi-region.md)
5454
* Includes using region pairs, multiple clusters with Azure Traffic Manager, and geo-replication of container images.
5555

5656
## Developer best practices
5757

58-
As a developer or application owner, you can simplify your development experience and define require application performance needs.
58+
If you're a developer or application owner, you can simplify your development experience and define required application performance features.
5959

6060
* [Best practices for application developers to manage resources](developer-best-practices-resource-management.md)
6161
* Includes defining pod resource requests and limits, configuring development tools, and checking for application issues.
6262
* [Best practices for pod security](developer-best-practices-pod-security.md)
6363
* Includes securing access to resources, limiting credential exposure, and using pod identities and digital key vaults.
6464

65-
## Kubernetes / AKS concepts
65+
## Kubernetes and AKS concepts
6666

67-
To help understand some of the features and components of these best practices, you can also see the following conceptual articles for clusters in Azure Kubernetes Service (AKS):
67+
The following conceptual articles cover some of the fundamental features and components for clusters in AKS:
6868

6969
* [Kubernetes core concepts](concepts-clusters-workloads.md)
7070
* [Access and identity](concepts-identity.md)

articles/automation/automation-alert-metric.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Alerts allow you to define a condition to monitor for and an action to take when
2929

3030
2. The **Configure signal logic** page is where you define the logic that triggers the alert. Under the historical graph you are presented with two dimensions, **Runbook Name** and **Status**. Dimensions are different properties for a metric that can be used to filter results. For **Runbook Name**, select the runbook you want to alert on or leave blank to alert on all runbooks. For **Status**, select a status from the drop-down you want to monitor for. The runbook name and status values that appear in the dropdown are only for jobs that have ran in the past week.
3131

32-
If you want to alert on a status or runbook that isn't shown in the dropdown, click the **Add custom value** option next to the dimension. This action opens a dialog that allows you to specify a custom value, which hasn't emitted for that dimension recently. If you enter a value that doesn't exist for a property your alert won't be triggered.
32+
If you want to alert on a status or runbook that isn't shown in the dropdown, click the **Add custom value** option next to the dimension. This action opens a dialog that allows you to specify a custom value, which hasn't emitted for that dimension recently. If you enter a value that doesn't exist for a property your alert won't be triggered.For list of job statuses, see [Job statuses](automation-runbook-execution.md#job-statuses).
3333

3434
> [!NOTE]
3535
> If you don't specify a name for the **Runbook Name** dimension, if there are any runbooks that meet the status criteria, which includes hidden system runbooks, you will receive an alert.

0 commit comments

Comments
 (0)