Skip to content

Commit a8474b5

Browse files
authored
Merge pull request #177355 from alexbuckgit/alexbuckgit/docutune-autopr-20211025-033632-5614060
DocuTune: Clear blank lines
2 parents dddf813 + 3a9ade5 commit a8474b5

8 files changed

+38
-39
lines changed

articles/active-directory/app-provisioning/application-provisioning-config-problem-no-users-provisioned.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,7 @@ After automatic provisioning has been configured for an application (including v
2222
- Which users and groups have been **assigned** to the application. Note that provisioning nested groups are not supported. For more information on assignment, see [Assign a user or group to an enterprise app in Azure Active Directory](../manage-apps/assign-user-or-group-access-portal.md).
2323
- Whether or not **attribute mappings** are enabled, and configured to sync valid attributes from Azure AD to the app. For more information on attribute mappings, see [Customizing User Provisioning Attribute Mappings for SaaS Applications in Azure Active Directory](customize-application-attributes.md).
2424
- Whether or not there is a **scoping filter** present that is filtering users based on specific attribute values. For more information on scoping filters, see [Attribute-based application provisioning with scoping filters](../app-provisioning/define-conditional-rules-for-provisioning-user-accounts.md).
25-
26-
25+
2726
If you observe that users are not being provisioned, consult the [Provisioning logs (preview)](../reports-monitoring/concept-provisioning-logs.md?context=azure/active-directory/manage-apps/context/manage-apps-context) in Azure AD. Search for log entries for a specific user.
2827

2928
You can access the provisioning logs in the Azure portal by selecting **Azure Active Directory** > **Enterprise Apps** > **Provisioning logs (preview)** in the **Activity** section. You can search the provisioning data based on the name of the user or the identifier in either the source system or the target system. For details, see [Provisioning logs (preview)](../reports-monitoring/concept-provisioning-logs.md?context=azure/active-directory/manage-apps/context/manage-apps-context).

articles/active-directory/app-provisioning/application-provisioning-config-problem-scim-compatibility.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,14 @@ Use the following URL to update PATCH behavior and ensure SCIM compliance. The f
5050
- Requests to add a single-value string attribute
5151
- Requests to replace multiple attributes
5252
- Requests to remove a group member
53-
53+
5454
This behavior is currently only available when using the flag, but will become the default behavior over the next few months. Note this feature flag currently does not work with on-demand provisioning.
5555
* **URL (SCIM Compliant):** aadOptscim062020
5656
* **SCIM RFC references:**
5757
* https://tools.ietf.org/html/rfc7644#section-3.5.2
5858

5959
Below are sample requests to help outline what the sync engine currently sends versus the requests that are sent once the feature flag is enabled.
60-
60+
6161
**Requests made to disable users:**
6262

6363
**Without feature flag**
@@ -232,41 +232,41 @@ Below are sample requests to help outline what the sync engine currently sends v
232232

233233

234234
* **Downgrade URL:** Once the new SCIM compliant behavior becomes the default on the non-gallery application, you can use the following URL to roll back to the old, non SCIM compliant behavior: AzureAdScimPatch2017
235-
235+
236236

237237

238238
## Upgrading from the older customappsso job to the SCIM job
239239
Following the steps below will delete your existing customappsso job and create a new scim job.
240-
240+
241241
1. Sign into the Azure portal at https://portal.azure.com.
242242
2. In the **Azure Active Directory > Enterprise Applications** section of the Azure portal, locate and select your existing SCIM application.
243243
3. In the **Properties** section of your existing SCIM app, copy the **Object ID**.
244244
4. In a new web browser window, go to https://developer.microsoft.com/graph/graph-explorer
245245
and sign in as the administrator for the Azure AD tenant where your app is added.
246246
5. In the Graph Explorer, run the command below to locate the ID of your provisioning job. Replace "[object-id]" with the service principal ID (object ID) copied from the third step.
247-
247+
248248
`GET https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs`
249249

250250
![Get Jobs](media/application-provisioning-config-problem-scim-compatibility/get-jobs.PNG "Get Jobs")
251251

252252

253253
6. In the results, copy the full "ID" string that begins with either "customappsso" or "scim".
254254
7. Run the command below to retrieve the attribute-mapping configuration, so you can make a backup. Use the same [object-id] as before, and replace [job-id] with the provisioning job ID copied from the last step.
255-
255+
256256
`GET https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[job-id]/schema`
257-
257+
258258
![Get Schema](media/application-provisioning-config-problem-scim-compatibility/get-schema.PNG "Get Schema")
259259

260260
8. Copy the JSON output from the last step, and save it to a text file. The JSON contains any custom attribute-mappings that you added to your old app, and should be approximately a few thousand lines of JSON.
261261
9. Run the command below to delete the provisioning job:
262-
262+
263263
`DELETE https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[job-id]`
264264

265265
10. Run the command below to create a new provisioning job that has the latest service fixes.
266266

267267
`POST https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs`
268268
`{ "templateId": "scim" }`
269-
269+
270270
11. In the results of the last step, copy the full "ID" string that begins with "scim". Optionally, reapply your old attribute-mappings by running the command below, replacing [new-job-id] with the new job ID you copied, and entering the JSON output from step #7 as the request body.
271271

272272
`POST https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[new-job-id]/schema`
@@ -288,7 +288,7 @@ Following the steps below will delete your existing customappsso job and create
288288

289289
`POST https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs`
290290
`{ templateId: "customappsso" }`
291-
291+
292292
6. Return to the first web browser window, and select the **Provisioning** tab for your application.
293293
7. Complete the user provisioning configuration as you normally would.
294294

articles/active-directory/app-provisioning/application-provisioning-configuration-api.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ Content-type: application/json
7777
],
7878
"publisher": "Amazon",
7979
"description": "Federate to a single AWS account and use SAML claims to authorize access to AWS IAM roles. If you have many AWS accounts, consider using the AWS Single Sign-On gallery application instead."
80-
80+
8181
}
8282
```
8383

@@ -242,7 +242,7 @@ Configuring provisioning requires establishing a trust between Azure AD and the
242242
#### Request
243243
```msgraph-interactive
244244
PUT https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/secrets
245-
245+
246246
{
247247
"value": [
248248
{

articles/active-directory/app-provisioning/application-provisioning-log-analytics.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Once you've configured Azure monitoring, you can enable logs for application pro
2929

3030
> [!NOTE]
3131
> If you have just recently provisioned a workspace, it can take some time before you can send logs to it. If you receive an error that the subscription is not registered to use *microsoft.insights* then check back after a few minutes.
32-
32+
3333
## Understanding the data
3434
The underlying data stream that Provisioning sends log viewers is almost identical. Azure Monitor logs gets nearly the same stream as the Azure portal UI and Azure API. There are only a few **differences** in the log fields as outlined in the following table. To learn more about these fields, see [List provisioningObjectSummary](/graph/api/provisioningobjectsummary-list?preserve-view=true&tabs=http&view=graph-rest-beta).
3535

@@ -116,4 +116,4 @@ We're taking an open source and community-based approach to application provisio
116116
- [Get started with queries in Azure Monitor logs](../../azure-monitor/logs/get-started-queries.md)
117117
- [Create and manage alert groups in the Azure portal](../../azure-monitor/alerts/action-groups.md)
118118
- [Install and use the log analytics views for Azure Active Directory](../reports-monitoring/howto-install-use-log-analytics-views.md)
119-
- [Provisioning logs API](/graph/api/resources/provisioningobjectsummary?preserve-view=true&view=graph-rest-beta)
119+
- [Provisioning logs API](/graph/api/resources/provisioningobjectsummary?preserve-view=true&view=graph-rest-beta)

articles/active-directory/app-provisioning/application-provisioning-quarantine-status.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ While in quarantine:
2525
## How do I know if my application is in quarantine?
2626

2727
There are three ways to check whether an application is in quarantine:
28-
28+
2929
- In the Azure portal, navigate to **Azure Active Directory** > **Enterprise applications** > <*application name*> > **Provisioning** and review the progress bar for a quarantine message.
3030

3131
![Provisioning status bar showing quarantine status](./media/application-provisioning-quarantine-status/progress-bar-quarantined.png)
@@ -83,7 +83,7 @@ After you've resolved the issue, restart the provisioning job. Certain changes t
8383
- Use the Azure portal to restart the provisioning job. On the application's **Provisioning** page, select **Restart provisioning**. This action fully restarts the provisioning service, which can take some time. A full initial cycle will run again, which clears escrows, removes the app from quarantine, and clears any watermarks. The service will then evaluate all the users in the source system again and determine if they are in scope for provisioning. This can be useful when your application is currently in quarantine, as this article discusses, or you need to make a change to your attribute mappings. Note that the initial cycle takes longer to complete than the typical incremental cycle due to the number of objects that need to be evaluated. You can learn more about the performance of initial and incremental cycles [here](application-provisioning-when-will-provisioning-finish-specific-user.md).
8484

8585
- Use Microsoft Graph to [restart the provisioning job](/graph/api/synchronization-synchronizationjob-restart?tabs=http&view=graph-rest-beta&preserve-view=true). You'll have full control over what you restart. You can choose to clear escrows (to restart the escrow counter that accrues toward quarantine status), clear quarantine (to remove the application from quarantine), or clear watermarks. Use the following request:
86-
86+
8787
```microsoft-graph
8888
POST /servicePrincipals/{id}/synchronization/jobs/{jobId}/restart
8989
```

articles/dotnet-develop-multitenant-applications.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ A properly implemented multitenant application provides the following benefits t
3737
* **Costs**: Costs are lower than running a dedicated, single-tenant application because multi-tenancy enables the sharing of resources.
3838
* **Customizability**. The ability to customize the application for an individual tenant in various ways such as adding or removing features, changing colors and logos, or even adding their own code or script.
3939

40-
In short, while there are many considerations that you must take into account to provide a highly scalable service, there are also a number of goals and requirements that are common to many multitenant applications. Some may not be relevant in specific scenarios, and the importance of individual goals and requirements will differ in each scenario. As a provider of the multitenant application, you will also have goals and requirements such as, meeting the tenant's goals and requirements, profitability, billing, multiple service levels, provisioning, maintainability monitoring, and automation.
40+
In short, while there are many considerations that you must take into account to provide a highly scalable service, there are also multiple goals and requirements that are common to many multitenant applications. Some may not be relevant in specific scenarios, and the importance of individual goals and requirements will differ in each scenario. As a provider of the multitenant application, you'll also have goals and requirements, such as meeting the tenant's needs, profitability, billing, multiple service levels, provisioning, maintainability monitoring, and automation.
4141

4242
For more information on additional design considerations of a multitenant application, see [Hosting a Multi-Tenant Application on Azure][Hosting a Multi-Tenant Application on Azure]. For information on common data architecture patterns of multi-tenant software-as-a-service (SaaS) database applications, see [Design Patterns for Multi-tenant SaaS Applications with Azure SQL Database](./azure-sql/database/saas-tenancy-app-design-patterns.md).
4343

@@ -58,7 +58,7 @@ Data management such as Azure SQL Database or Azure Storage services such as the
5858
* Securing Multitenant Data in SQL Database per-tenant SQL Server logins.
5959
* Using Azure Tables for Application Resources by specifying a container level access policy, you can have the ability to adjust permissions without having to issue new URL's for the resources protected with shared access signatures.
6060
* Azure Queues for Application Resources Azure queues are commonly used to drive processing on behalf of tenants, but may also be used to distribute work required for provisioning or management.
61-
* Service Bus Queues for Application Resources that pushes work to a shared a service, you can use a single queue where each tenant sender only has permissions (as derived from claims issued from ACS) to push to that queue, while only the receivers from the service have permission to pull from the queue the data coming from multiple tenants.
61+
* Service Bus Queues for Application Resources that pushes work to a shared service, you can use a single queue where each tenant sender only has permissions (as derived from claims issued from ACS) to push to that queue, while only the receivers from the service have permission to pull from the queue the data coming from multiple tenants.
6262

6363
**Connection and Security Services**
6464

@@ -80,7 +80,7 @@ Azure provides a number of ways to provision new tenants for the application. Fo
8080
* Worker roles allow you to provision and de-provision per tenant resources (such as when a new tenant signs-up or cancels), collect metrics for metering use, and manage scale following a certain schedule or in response to the crossing of thresholds of key performance indicators. This same role may also be used to push out updates and upgrades to the solution.
8181
* Azure Blobs can be used to provision compute or pre-initialized storage resources for new tenants while providing container level access policies to protect the compute service Packages, VHD images and other resources.
8282
* Options for provisioning SQL Database resources for a tenant include:
83-
83+
8484
* DDL in scripts or embedded as resources within assemblies.
8585
* SQL Server 2008 R2 DAC Packages deployed programmatically.
8686
* Copying from a master reference database.
@@ -89,4 +89,4 @@ Azure provides a number of ways to provision new tenants for the application. Fo
8989
<!--links-->
9090

9191
[Hosting a Multi-Tenant Application on Azure]: /previous-versions/msp-n-p/hh534480(v=pandp.10)
92-
[Designing Multitenant Applications on Azure]: https://msdn.microsoft.com/library/windowsazure/hh689716
92+
[Designing Multitenant Applications on Azure]: https://msdn.microsoft.com/library/windowsazure/hh689716

articles/vs-azure-tools-storage-explorer-files.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ The following steps illustrate how to view the contents of a file share within S
6868
![Open share](media/vs-azure-tools-storage-explorer-files/image4.png)
6969

7070
1. The main pane will display the file share's contents.
71-
71+
7272
![Screenshot of the main pane for a file share in Storage Explorer showing the contents of the share.](media/vs-azure-tools-storage-explorer-files/image5.png)
7373

7474
## Delete a file share
@@ -88,7 +88,7 @@ The following steps illustrate how to delete a file share within Storage Explore
8888
![Delete](media/vs-azure-tools-storage-explorer-files/image6.png)
8989

9090
1. Select **Yes** to the confirmation dialog.
91-
91+
9292
![Confirmation dialog](media/vs-azure-tools-storage-explorer-files/image7.png)
9393

9494
## Copy a file share
@@ -134,7 +134,7 @@ The following steps illustrate how to create a SAS for a file share:+
134134
1. When you're finished specifying the SAS options, select **Create**.
135135

136136
1. A second **Shared Access Signature** dialog will then display that lists the file share along with the URL and QueryStrings you can use to access the storage resource. Select **Copy** next to the URL you wish to copy to the clipboard.
137-
137+
138138
![Second SAS dialog](media/vs-azure-tools-storage-explorer-files/image12.png)
139139

140140
1. When done, select **Close**.
@@ -154,21 +154,21 @@ The following steps illustrate how to manage (add and remove) access policies fo
154154
![Manage access policies context menu](media/vs-azure-tools-storage-explorer-files/image13.png)
155155

156156
1. The **Access Policies** dialog will list any access policies already created for the selected file share.
157-
157+
158158
![Access Policies](media/vs-azure-tools-storage-explorer-files/image14.png)
159159

160160
1. Follow these steps depending on the access policy management task:
161-
161+
162162
- **Add a new access policy** - Select **Add**. Once generated, the **Access Policies** dialog will display the newly added access policy (with default settings).
163163

164164
- **Edit an access policy** - Make any desired edits, and select **Save**.
165165

166166
- **Remove an access policy** - Select **Remove** next to the access policy you wish to remove.
167167

168168
1. Create a new SAS URL using the Access Policy you created earlier:
169-
169+
170170
![Get SAS](media/vs-azure-tools-storage-explorer-files/image15.png)
171-
171+
172172
![SAS name and properties](media/vs-azure-tools-storage-explorer-files/image16.png)
173173

174174
## Managing files in a file share
@@ -198,15 +198,15 @@ The following steps illustrate how to manage the files (and folders) within a fi
198198
a. On the main pane's toolbar, select **Upload**, and then **Upload Files** from the drop-down menu.
199199

200200
![Upload files](media/vs-azure-tools-storage-explorer-files/image18.png)
201-
201+
202202
b. In the **Upload files** dialog, select the ellipsis (****) button on the right side of the **Files** text box to select the file(s) you wish to upload.
203203

204204
![Adding files](media/vs-azure-tools-storage-explorer-files/image19.png)
205205

206206
c. Select **Upload**.
207207

208208
- **Upload a folder to a file share**
209-
209+
210210
a. On the main pane's toolbar, select **Upload**, and then **Upload Folder** from the drop-down menu.
211211

212212
![Upload folder menu](media/vs-azure-tools-storage-explorer-files/image20.png)
@@ -218,21 +218,21 @@ The following steps illustrate how to manage the files (and folders) within a fi
218218
d. Select **Upload**.
219219

220220
- **Download a file to your local computer**
221-
221+
222222
a. Select the file you wish to download.
223-
223+
224224
b. On the main pane's toolbar, select **Download**.
225-
225+
226226
c. In the **Specify where to save the downloaded file** dialog, specify the location where you want the file downloaded, and the name you wish to give it.
227227

228228
d. Select **Save**.
229229

230230
- **Open a file on your local computer**
231-
231+
232232
a. Select the file you wish to open.
233-
233+
234234
b. On the main pane's toolbar, select **Open**.
235-
235+
236236
c. The file will be downloaded and opened using the application associated with the file's underlying file type.
237237

238238
- **Copy a file to the clipboard**

articles/vs-azure-tools-storage-manage-with-storage-explorer.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ Storage Explorer lets you connect to individual resources, such as an Azure Data
120120
| File shares | No | No | Yes (URL) | No |
121121
| Queues | Yes | No | Yes (URL) | No |
122122
| Tables | No | No | Yes (URL) | No |
123-
123+
124124
Storage Explorer can also connect to a [local storage emulator](#local-storage-emulator) using the emulator's configured ports.
125125

126126
To connect to an individual resource, select the **Connect** button in the left-hand toolbar. Then follow the instructions for the resource type you want to connect to.
@@ -142,7 +142,7 @@ Storage Explorer can use your Azure account to connect to the following resource
142142
* Azure Data Lake Storage Gen2 containers
143143
* Azure Data Lake Storage Gen2 directories
144144
* Queues
145-
145+
146146
Azure AD is the preferred option if you have data layer access to your resource but no management layer access.
147147

148148
1. Sign in to at least one Azure account using the [steps described above](#sign-in-to-azure).

0 commit comments

Comments
 (0)