Skip to content

Commit 5e4847d

Browse files
authored
Merge pull request #197875 from cynthn/direct-sharing
Sharing
2 parents 2be393e + 6de496d commit 5e4847d

15 files changed

+966
-324
lines changed

articles/virtual-machines/.openpublishing.redirection.virtual-machines.json

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2859,7 +2859,16 @@
28592859
"source_path_from_root": "/articles/virtual-machines/maintenance-control-powershell.md",
28602860
"redirect_url": "/azure/virtual-machines/maintenance-configurations-powershell",
28612861
"redirect_document_id": false
2862-
},
2862+
},
2863+
{
2864+
"source_path_from_root": "/articles/virtual-machines/windows/share-images-across-tenants.md",
2865+
"redirect_url": "/azure/virtual-machines/azure-compute-gallery#sharing",
2866+
"redirect_document_id": false
2867+
}, {
2868+
"source_path_from_root": "/articles/virtual-machines/linux/share-images-across-tenants.md",
2869+
"redirect_url": "/azure/virtual-machines/azure-compute-gallery#sharing",
2870+
"redirect_document_id": false
2871+
},
28632872
{
28642873
"source_path_from_root": "/articles/virtual-machines/windows/create-portal-availability-zone.md",
28652874
"redirect_url": "/azure/virtual-machines/create-portal-availability-zone",

articles/virtual-machines/TOC.yml

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,13 @@
380380
displayName: Shared Image Gallery, SIG, sig, gallery, image
381381
href: create-gallery.md
382382
- name: Share a gallery
383-
href: share-gallery.md
383+
items:
384+
- name: RBAC
385+
href: share-gallery.md
386+
- name: Direct share
387+
href: share-gallery-direct.md
388+
- name: Community gallery
389+
href: share-gallery-community.md
384390
- name: Images
385391
items:
386392
- name: Images in a gallery
@@ -402,14 +408,6 @@
402408
- name: Update image resources
403409
displayName: Shared Image Gallery, SIG, sig, gallery, image
404410
href: update-image-resources.md
405-
- name: App registration for sharing
406-
items:
407-
- name: Linux
408-
displayName: Shared Image Gallery, SIG, sig, gallery, image, app registration
409-
href: ./linux/share-images-across-tenants.md
410-
- name: Windows
411-
displayName: Shared Image Gallery, SIG, sig, gallery, image, app registration
412-
href: ./windows/share-images-across-tenants.md
413411
- name: Resource Manager Templates
414412
items:
415413
- name: Create an Azure Compute Gallery
@@ -719,13 +717,13 @@
719717
- name: Remove a VM
720718
displayName: on-demand capacity reservation
721719
href: capacity-reservation-remove-vm.md
722-
- name: Associate a VM scale set - Flexible
720+
- name: Associate a scale set - Flexible
723721
displayName: on-demand capacity reservation with flexible orchestration
724722
href: capacity-reservation-associate-virtual-machine-scale-set-flex.md
725-
- name: Associate a VM scale set - Uniform
723+
- name: Associate a scale set - Uniform
726724
displayName: on-demand capacity reservation
727725
href: capacity-reservation-associate-virtual-machine-scale-set.md
728-
- name: Remove a VM scale set
726+
- name: Remove a scale set
729727
displayName: on-demand capacity reservation
730728
href: capacity-reservation-remove-virtual-machine-scale-set.md
731729
- name: Create Virtual Machines
@@ -2012,7 +2010,6 @@
20122010
href: ./windows/aws-to-azure.md
20132011
- name: Upload on-premises VM
20142012
href: ./linux/upload-vhd.md
2015-
displayname: Migrate from Amazon Web Services (AWS) to Azure
20162013
- name: Use Azure Site Recovery
20172014
href: ../site-recovery/migrate-overview.md?context=/azure/virtual-machines/context/context
20182015
- name: Infrastructure automation

articles/virtual-machines/azure-compute-gallery.md

Lines changed: 65 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.author: cynthn
66
ms.service: virtual-machines
77
ms.subservice: gallery
88
ms.topic: overview
9-
ms.date: 04/26/2022
9+
ms.date: 07/18/2022
1010
ms.reviewer: cynthn
1111

1212
---
@@ -81,18 +81,73 @@ The regions that a resource is replicated to can be updated after creation time.
8181
![Graphic showing how you can replicate images](./media/shared-image-galleries/replication.png)
8282

8383
<a name=community></a>
84-
## Community gallery (preview)
8584

85+
## Sharing
86+
87+
There are three main ways to share images in an Azure Compute Gallery, depending on who you want to share with:
88+
89+
| Share with\: | Option |
90+
|----|----|
91+
| [Specific people, groups, or service principals](#rbac) | Role-based access control (RBAC) lets you share resources to specific people, groups, or service principals on a granular level. |
92+
| [Subscriptions or tenants](#shared-directly-to-a-tenant-or-subscription) | Direct shared gallery (preview) lets you share to everyone in a subscription or tenant. |
93+
| [Everyone](#community-gallery) | Community gallery (preview) lets you share your entire gallery publicly, to all Azure users. |
94+
95+
### RBAC
96+
97+
As the Azure Compute Gallery, definition, and version are all resources, they can be shared using the built-in native Azure Roles-based Access Control (RBAC) roles. Using Azure RBAC roles you can share these resources to other users, service principals, and groups. You can even share access to individuals outside of the tenant they were created within. Once a user has access to the resource version, they can use it to deploy a VM or a Virtual Machine Scale Set. Here is the sharing matrix that helps understand what the user gets access to:
98+
99+
| Shared with User | Azure Compute Gallery | Image Definition | Image version |
100+
|----------------------|----------------------|--------------|----------------------|
101+
| Azure Compute Gallery | Yes | Yes | Yes |
102+
| Image Definition | No | Yes | Yes |
103+
104+
We recommend sharing at the Gallery level for the best experience. We do not recommend sharing individual image versions. For more information about Azure RBAC, see [Assign Azure roles](../role-based-access-control/role-assignments-portal.md).
105+
106+
For more information, see [Share using RBAC](./share-gallery.md).
107+
108+
109+
### Shared directly to a tenant or subscription
110+
111+
Give specific subscriptions or tenants access to a direct shared Azure Compute Gallery. Sharing a gallery with tenants and subscriptions give them read-only access to your gallery. For more information, see [Share a gallery with subscriptions or tenants](./share-gallery-direct.md).
86112

87113
> [!IMPORTANT]
88-
> Azure Compute Gallery – community gallery is currently in PREVIEW and subject to the [Preview Terms for Azure Compute Gallery - community gallery](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
114+
> Azure Compute Gallery – direct shared gallery is currently in PREVIEW and subject to the [Preview Terms for Azure Compute Gallery](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
115+
>
116+
> To publish images to a direct shared gallery during the preview, you need to register at [https://aka.ms/directsharedgallery-preview](https://aka.ms/directsharedgallery-preview). Creating VMs from a direct shared gallery is open to all Azure users.
89117
>
90-
> To share images in the community gallery, you need to register for the preview at [https://aka.ms/communitygallery-preview](https://aka.ms/communitygallery-preview). Creating VMs and scale sets from images shared the community gallery is open to all Azure users.
118+
> During the preview, you need to create a new gallery, with the property `sharingProfile.permissions` set to `Groups`. When using the CLI to create a gallery, use the `--permissions groups` parameter. You can't use an existing gallery, the property can't currently be updated.
119+
>
120+
> You can't currently create a Flexible virtual machine scale set from an image shared to you by another tenant.
121+
122+
#### Limitations
123+
124+
During the preview:
125+
- You can only share to subscriptions that are also in the preview.
126+
- You can only share to 30 subscriptions and 5 tenants.
127+
- A direct shared gallery cannot contain encrypted image versions. Encrypted images cannot be created within a gallery that is directly shared.
128+
- Only the owner of a subscription, or a user or service principal assigned to the `Compute Gallery Sharing Admin` role at the subscription or gallery level will be able to enable group-based sharing.
129+
- You need to create a new gallery, with the property `sharingProfile.permissions` set to `Groups`. When using the CLI to create a gallery, use the `--permissions groups` parameter. You can't use an existing gallery, the property can't currently be updated.
91130

131+
### Community gallery
92132

93-
Sharing images to the community is a new capability in Azure Compute Gallery. In the preview, you can make your image galleries public, and share them to all Azure customers. When a gallery is marked as a community gallery, all images under the gallery become available to all Azure customers as a new resource type under Microsoft.Compute/communityGalleries. All Azure customers can see the galleries and use them to create VMs. Your original resources of the type `Microsoft.Compute/galleries` are still under your subscription, and private.
133+
To share a gallery with all Azure users, you can create a community gallery (preview). Community galleries can be used by anyone with an Azure subscription. Someone creating a VM can browse images shared with the community using the portal, REST, or the Azure CLI.
94134

95-
### Why share to the community?
135+
Sharing images to the community is a new capability in [Azure Compute Gallery](./azure-compute-gallery.md). In the preview, you can make your image galleries public, and share them to all Azure customers. When a gallery is marked as a community gallery, all images under the gallery become available to all Azure customers as a new resource type under Microsoft.Compute/communityGalleries. All Azure customers can see the galleries and use them to create VMs. Your original resources of the type `Microsoft.Compute/galleries` are still under your subscription, and private.
136+
137+
For more information, see [Share images using a community gallery](./share-gallery-community.md).
138+
139+
140+
> [!IMPORTANT]
141+
> Azure Compute Gallery – community galleries is currently in PREVIEW and subject to the [Preview Terms for Azure Compute Gallery - community gallery](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
142+
>
143+
> To publish a community gallery, you need to register for the preview at [https://aka.ms/communitygallery-preview](https://aka.ms/communitygallery-preview). Creating VMs from the community gallery is open to all Azure users.
144+
>
145+
> During the preview, the gallery must be created as a community gallery (for CLI, this means using the `--permissions community` parameter) you currently can't migrate a regular gallery to a community gallery.
146+
>
147+
> You can't currently create a Flexible virtual machine scale set from an image shared by another tenant.
148+
149+
150+
#### Why share to the community?
96151

97152
As a content publisher, you might want to share a gallery to the community:
98153

@@ -104,9 +159,9 @@ As a content publisher, you might want to share a gallery to the community:
104159

105160
- You don’t want to deal with the complexity of multi-tenant authentication when sharing with multiple tenants on Azure.
106161

107-
### How sharing with the community works
162+
#### How sharing with the community works
108163

109-
You [create a gallery resource](create-gallery.md#create-a-community-gallery-preview) under `Microsoft.Compute/Galleries` and choose `community` as a sharing option.
164+
You [create a gallery resource](create-gallery.md#create-a-community-gallery) under `Microsoft.Compute/Galleries` and choose `community` as a sharing option.
110165

111166
When you are ready, you flag your gallery as ready to be shared publicly. Only the owner of a subscription, or a user or service principal with the `Compute Gallery Sharing Admin` role at the subscription or gallery level, can enable a gallery to go public to the community. At this point, the Azure infrastructure creates proxy read-only regional resources, under `Microsoft.Compute/CommunityGalleries`, which are public.
112167

@@ -128,7 +183,7 @@ Information from your image definitions will also be publicly available, like wh
128183
> If you stop sharing your gallery during the preview, you won't be able to re-share it.
129184
130185

131-
### Limitations for images shared to the community
186+
#### Limitations for images shared to the community
132187

133188
There are some limitations for sharing your gallery to the community:
134189
- Encrypted images aren't supported.
@@ -140,7 +195,7 @@ There are some limitations for sharing your gallery to the community:
140195
> [!IMPORTANT]
141196
> Microsoft does not provide support for images you share to the community.
142197
143-
### Community-shared images FAQ
198+
#### Community-shared images FAQ
144199

145200
**Q: What are the charges for using a gallery that is shared to the community?**
146201

@@ -168,18 +223,6 @@ There are some limitations for sharing your gallery to the community:
168223

169224
**A**: Only the content publishers have control over the regions their images are available in. If you don’t find an image in a specific region, reach out to the publisher directly.
170225

171-
172-
## Explicit sharing using RBAC roles
173-
174-
As the Azure Compute Gallery, definition, and version are all resources, they can be shared using the built-in native Azure Roles-based Access Control (RBAC) roles. Using Azure RBAC roles you can share these resources to other users, service principals, and groups. You can even share access to individuals outside of the tenant they were created within. Once a user has access to the resource version, they can use it to deploy a VM or a Virtual Machine Scale Set. Here is the sharing matrix that helps understand what the user gets access to:
175-
176-
| Shared with User | Azure Compute Gallery | Image Definition | Image version |
177-
|----------------------|----------------------|--------------|----------------------|
178-
| Azure Compute Gallery | Yes | Yes | Yes |
179-
| Image Definition | No | Yes | Yes |
180-
181-
We recommend sharing at the Gallery level for the best experience. We do not recommend sharing individual image versions. For more information about Azure RBAC, see [Assign Azure roles](../role-based-access-control/role-assignments-portal.md).
182-
183226
## Activity Log
184227
The [Activity log](../azure-monitor/essentials/activity-log.md) displays recent activity on the gallery, image, or version including any configuration changes and when it was created and deleted. View the activity log in the Azure portal, or create a [diagnostic setting to send it to a Log Analytics workspace](../azure-monitor/essentials/activity-log.md#send-to-log-analytics-workspace), where you can view events over time or analyze them with other collected data
185228

0 commit comments

Comments
 (0)