Utwórz lub zaktualizuj zasady replikacji obiektów konta magazynu.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}?api-version=2023-01-01
Parametry identyfikatora URI
Nazwa |
W |
Wymagane |
Typ |
Opis |
accountName
|
path |
True
|
string
|
Nazwa konta magazynu w określonej grupie zasobów. Nazwy kont magazynu muszą mieć długość od 3 do 24 znaków, a tylko cyfry i małe litery.
Regex pattern: ^[a-z0-9]+$
|
objectReplicationPolicyId
|
path |
True
|
string
|
W przypadku konta docelowego podaj wartość "default". Najpierw skonfiguruj zasady na koncie docelowym. Dla konta źródłowego podaj wartość identyfikatora zasad zwracanego podczas pobierania zasad zdefiniowanych na koncie docelowym. Zasady są pobierane jako plik JSON.
|
resourceGroupName
|
path |
True
|
string
|
Nazwa grupy zasobów w ramach subskrypcji użytkownika. W nazwie jest uwzględniana wielkość liter.
Regex pattern: ^[-\w\._\(\)]+$
|
subscriptionId
|
path |
True
|
string
|
Identyfikator subskrypcji docelowej.
|
api-version
|
query |
True
|
string
|
Wersja interfejsu API do użycia dla tej operacji.
|
Treść żądania
Nazwa |
Wymagane |
Typ |
Opis |
properties.destinationAccount
|
True
|
string
|
Wymagane. Nazwa konta docelowego. Powinien on mieć pełny identyfikator zasobu, jeśli parametr allowCrossTenantReplication ma wartość false.
|
properties.sourceAccount
|
True
|
string
|
Wymagane. Nazwa konta źródłowego. Powinien on mieć pełny identyfikator zasobu, jeśli parametr allowCrossTenantReplication ma wartość false.
|
properties.rules
|
|
ObjectReplicationPolicyRule[]
|
Reguły replikacji obiektów konta magazynu.
|
Odpowiedzi
Nazwa |
Typ |
Opis |
200 OK
|
ObjectReplicationPolicy
|
OK — pomyślnie umieść zasady replikacji obiektów.
|
Other Status Codes
|
ErrorResponse
|
Odpowiedź na błąd opisująca, dlaczego operacja nie powiodła się.
|
Zabezpieczenia
azure_auth
Przepływ OAuth2 usługi Azure Active Directory
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nazwa |
Opis |
user_impersonation
|
personifikacja konta użytkownika
|
Przykłady
StorageAccountCreateObjectReplicationPolicyOnDestination
Sample Request
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/default?api-version=2023-01-01
{
"properties": {
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"sourceContainer": "scont139",
"destinationContainer": "dcont139",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
]
}
}
]
}
}
import com.azure.resourcemanager.storage.fluent.models.ObjectReplicationPolicyInner;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyFilter;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyRule;
import java.util.Arrays;
/** Samples for ObjectReplicationPoliciesOperation CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/
* StorageAccountCreateObjectReplicationPolicyOnDestination.json
*/
/**
* Sample code: StorageAccountCreateObjectReplicationPolicyOnDestination.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
storageAccountCreateObjectReplicationPolicyOnDestination(com.azure.resourcemanager.AzureResourceManager azure) {
azure.storageAccounts().manager().serviceClient().getObjectReplicationPoliciesOperations()
.createOrUpdateWithResponse("res7687", "dst112", "default",
new ObjectReplicationPolicyInner().withSourceAccount("src1122").withDestinationAccount("dst112")
.withRules(Arrays.asList(new ObjectReplicationPolicyRule().withSourceContainer("scont139")
.withDestinationContainer("dcont139").withFilters(
new ObjectReplicationPolicyFilter().withPrefixMatch(Arrays.asList("blobA", "blobB"))))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.storage import StorageManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-storage
# USAGE
python storage_account_create_object_replication_policy_on_destination.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = StorageManagementClient(
credential=DefaultAzureCredential(),
subscription_id="{subscription-id}",
)
response = client.object_replication_policies.create_or_update(
resource_group_name="res7687",
account_name="dst112",
object_replication_policy_id="default",
properties={
"properties": {
"destinationAccount": "dst112",
"rules": [
{
"destinationContainer": "dcont139",
"filters": {"prefixMatch": ["blobA", "blobB"]},
"sourceContainer": "scont139",
}
],
"sourceAccount": "src1122",
}
},
)
print(response)
# x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armstorage_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/0baf811c3c76c87b3c127d098519bd97141222dd/specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json
func ExampleObjectReplicationPoliciesClient_CreateOrUpdate_storageAccountCreateObjectReplicationPolicyOnDestination() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armstorage.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewObjectReplicationPoliciesClient().CreateOrUpdate(ctx, "res7687", "dst112", "default", armstorage.ObjectReplicationPolicy{
Properties: &armstorage.ObjectReplicationPolicyProperties{
DestinationAccount: to.Ptr("dst112"),
Rules: []*armstorage.ObjectReplicationPolicyRule{
{
DestinationContainer: to.Ptr("dcont139"),
Filters: &armstorage.ObjectReplicationPolicyFilter{
PrefixMatch: []*string{
to.Ptr("blobA"),
to.Ptr("blobB")},
},
SourceContainer: to.Ptr("scont139"),
}},
SourceAccount: to.Ptr("src1122"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ObjectReplicationPolicy = armstorage.ObjectReplicationPolicy{
// Name: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Type: to.Ptr("Microsoft.Storage/storageAccounts/objectReplicationPolicies"),
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f"),
// Properties: &armstorage.ObjectReplicationPolicyProperties{
// DestinationAccount: to.Ptr("dst112"),
// PolicyID: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Rules: []*armstorage.ObjectReplicationPolicyRule{
// {
// DestinationContainer: to.Ptr("destContainer1"),
// Filters: &armstorage.ObjectReplicationPolicyFilter{
// PrefixMatch: []*string{
// to.Ptr("blobA"),
// to.Ptr("blobB")},
// },
// RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
// SourceContainer: to.Ptr("sourceContainer1"),
// }},
// SourceAccount: to.Ptr("src1122"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { StorageManagementClient } = require("@azure/arm-storage");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Create or update the object replication policy of the storage account.
*
* @summary Create or update the object replication policy of the storage account.
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json
*/
async function storageAccountCreateObjectReplicationPolicyOnDestination() {
const subscriptionId = process.env["STORAGE_SUBSCRIPTION_ID"] || "{subscription-id}";
const resourceGroupName = process.env["STORAGE_RESOURCE_GROUP"] || "res7687";
const accountName = "dst112";
const objectReplicationPolicyId = "default";
const properties = {
destinationAccount: "dst112",
rules: [
{
destinationContainer: "dcont139",
filters: { prefixMatch: ["blobA", "blobB"] },
sourceContainer: "scont139",
},
],
sourceAccount: "src1122",
};
const credential = new DefaultAzureCredential();
const client = new StorageManagementClient(credential, subscriptionId);
const result = await client.objectReplicationPoliciesOperations.createOrUpdate(
resourceGroupName,
accountName,
objectReplicationPolicyId,
properties
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f",
"name": "2a20bb73-5717-4635-985a-5d4cf777438f",
"type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies",
"properties": {
"policyId": "2a20bb73-5717-4635-985a-5d4cf777438f",
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "sourceContainer1",
"destinationContainer": "destContainer1",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
]
}
}
]
}
}
StorageAccountCreateObjectReplicationPolicyOnSource
Sample Request
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f?api-version=2023-01-01
{
"properties": {
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "scont139",
"destinationContainer": "dcont139",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
],
"minCreationTime": "2020-02-19T16:05:00Z"
}
}
]
}
}
import com.azure.resourcemanager.storage.fluent.models.ObjectReplicationPolicyInner;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyFilter;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyRule;
import java.util.Arrays;
/** Samples for ObjectReplicationPoliciesOperation CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/
* StorageAccountCreateObjectReplicationPolicyOnSource.json
*/
/**
* Sample code: StorageAccountCreateObjectReplicationPolicyOnSource.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
storageAccountCreateObjectReplicationPolicyOnSource(com.azure.resourcemanager.AzureResourceManager azure) {
azure.storageAccounts().manager().serviceClient().getObjectReplicationPoliciesOperations()
.createOrUpdateWithResponse("res7687", "src1122", "2a20bb73-5717-4635-985a-5d4cf777438f",
new ObjectReplicationPolicyInner().withSourceAccount("src1122").withDestinationAccount("dst112")
.withRules(Arrays
.asList(new ObjectReplicationPolicyRule().withRuleId("d5d18a48-8801-4554-aeaa-74faf65f5ef9")
.withSourceContainer("scont139").withDestinationContainer("dcont139").withFilters(
new ObjectReplicationPolicyFilter().withPrefixMatch(Arrays.asList("blobA", "blobB"))
.withMinCreationTime("2020-02-19T16:05:00Z")))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.storage import StorageManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-storage
# USAGE
python storage_account_create_object_replication_policy_on_source.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = StorageManagementClient(
credential=DefaultAzureCredential(),
subscription_id="{subscription-id}",
)
response = client.object_replication_policies.create_or_update(
resource_group_name="res7687",
account_name="src1122",
object_replication_policy_id="2a20bb73-5717-4635-985a-5d4cf777438f",
properties={
"properties": {
"destinationAccount": "dst112",
"rules": [
{
"destinationContainer": "dcont139",
"filters": {"minCreationTime": "2020-02-19T16:05:00Z", "prefixMatch": ["blobA", "blobB"]},
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "scont139",
}
],
"sourceAccount": "src1122",
}
},
)
print(response)
# x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armstorage_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/0baf811c3c76c87b3c127d098519bd97141222dd/specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json
func ExampleObjectReplicationPoliciesClient_CreateOrUpdate_storageAccountCreateObjectReplicationPolicyOnSource() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armstorage.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewObjectReplicationPoliciesClient().CreateOrUpdate(ctx, "res7687", "src1122", "2a20bb73-5717-4635-985a-5d4cf777438f", armstorage.ObjectReplicationPolicy{
Properties: &armstorage.ObjectReplicationPolicyProperties{
DestinationAccount: to.Ptr("dst112"),
Rules: []*armstorage.ObjectReplicationPolicyRule{
{
DestinationContainer: to.Ptr("dcont139"),
Filters: &armstorage.ObjectReplicationPolicyFilter{
MinCreationTime: to.Ptr("2020-02-19T16:05:00Z"),
PrefixMatch: []*string{
to.Ptr("blobA"),
to.Ptr("blobB")},
},
RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
SourceContainer: to.Ptr("scont139"),
}},
SourceAccount: to.Ptr("src1122"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ObjectReplicationPolicy = armstorage.ObjectReplicationPolicy{
// Name: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Type: to.Ptr("Microsoft.Storage/storageAccounts/objectReplicationPolicies"),
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f"),
// Properties: &armstorage.ObjectReplicationPolicyProperties{
// DestinationAccount: to.Ptr("dst112"),
// EnabledTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2019-06-08T03:01:55.716Z"); return t}()),
// PolicyID: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Rules: []*armstorage.ObjectReplicationPolicyRule{
// {
// DestinationContainer: to.Ptr("destContainer1"),
// Filters: &armstorage.ObjectReplicationPolicyFilter{
// MinCreationTime: to.Ptr("2020-02-19T16:05:00Z"),
// PrefixMatch: []*string{
// to.Ptr("blobA"),
// to.Ptr("blobB")},
// },
// RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
// SourceContainer: to.Ptr("sourceContainer1"),
// }},
// SourceAccount: to.Ptr("src1122"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { StorageManagementClient } = require("@azure/arm-storage");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Create or update the object replication policy of the storage account.
*
* @summary Create or update the object replication policy of the storage account.
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json
*/
async function storageAccountCreateObjectReplicationPolicyOnSource() {
const subscriptionId = process.env["STORAGE_SUBSCRIPTION_ID"] || "{subscription-id}";
const resourceGroupName = process.env["STORAGE_RESOURCE_GROUP"] || "res7687";
const accountName = "src1122";
const objectReplicationPolicyId = "2a20bb73-5717-4635-985a-5d4cf777438f";
const properties = {
destinationAccount: "dst112",
rules: [
{
destinationContainer: "dcont139",
filters: {
minCreationTime: "2020-02-19T16:05:00Z",
prefixMatch: ["blobA", "blobB"],
},
ruleId: "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
sourceContainer: "scont139",
},
],
sourceAccount: "src1122",
};
const credential = new DefaultAzureCredential();
const client = new StorageManagementClient(credential, subscriptionId);
const result = await client.objectReplicationPoliciesOperations.createOrUpdate(
resourceGroupName,
accountName,
objectReplicationPolicyId,
properties
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f",
"name": "2a20bb73-5717-4635-985a-5d4cf777438f",
"type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies",
"properties": {
"policyId": "2a20bb73-5717-4635-985a-5d4cf777438f",
"enabledTime": "2019-06-08T03:01:55.7168089Z",
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "sourceContainer1",
"destinationContainer": "destContainer1",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
],
"minCreationTime": "2020-02-19T16:05:00Z"
}
}
]
}
}
StorageAccountUpdateObjectReplicationPolicyOnDestination
Sample Request
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f?api-version=2023-01-01
{
"properties": {
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "scont139",
"destinationContainer": "dcont139",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
]
}
},
{
"sourceContainer": "scont179",
"destinationContainer": "dcont179"
}
]
}
}
import com.azure.resourcemanager.storage.fluent.models.ObjectReplicationPolicyInner;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyFilter;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyRule;
import java.util.Arrays;
/** Samples for ObjectReplicationPoliciesOperation CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/
* StorageAccountUpdateObjectReplicationPolicyOnDestination.json
*/
/**
* Sample code: StorageAccountUpdateObjectReplicationPolicyOnDestination.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
storageAccountUpdateObjectReplicationPolicyOnDestination(com.azure.resourcemanager.AzureResourceManager azure) {
azure.storageAccounts().manager().serviceClient().getObjectReplicationPoliciesOperations()
.createOrUpdateWithResponse("res7687", "dst112", "2a20bb73-5717-4635-985a-5d4cf777438f",
new ObjectReplicationPolicyInner().withSourceAccount("src1122").withDestinationAccount("dst112")
.withRules(
Arrays.asList(
new ObjectReplicationPolicyRule().withRuleId("d5d18a48-8801-4554-aeaa-74faf65f5ef9")
.withSourceContainer("scont139").withDestinationContainer("dcont139")
.withFilters(new ObjectReplicationPolicyFilter()
.withPrefixMatch(Arrays.asList("blobA", "blobB"))),
new ObjectReplicationPolicyRule().withSourceContainer("scont179")
.withDestinationContainer("dcont179"))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.storage import StorageManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-storage
# USAGE
python storage_account_update_object_replication_policy_on_destination.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = StorageManagementClient(
credential=DefaultAzureCredential(),
subscription_id="{subscription-id}",
)
response = client.object_replication_policies.create_or_update(
resource_group_name="res7687",
account_name="dst112",
object_replication_policy_id="2a20bb73-5717-4635-985a-5d4cf777438f",
properties={
"properties": {
"destinationAccount": "dst112",
"rules": [
{
"destinationContainer": "dcont139",
"filters": {"prefixMatch": ["blobA", "blobB"]},
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "scont139",
},
{"destinationContainer": "dcont179", "sourceContainer": "scont179"},
],
"sourceAccount": "src1122",
}
},
)
print(response)
# x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armstorage_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/0baf811c3c76c87b3c127d098519bd97141222dd/specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json
func ExampleObjectReplicationPoliciesClient_CreateOrUpdate_storageAccountUpdateObjectReplicationPolicyOnDestination() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armstorage.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewObjectReplicationPoliciesClient().CreateOrUpdate(ctx, "res7687", "dst112", "2a20bb73-5717-4635-985a-5d4cf777438f", armstorage.ObjectReplicationPolicy{
Properties: &armstorage.ObjectReplicationPolicyProperties{
DestinationAccount: to.Ptr("dst112"),
Rules: []*armstorage.ObjectReplicationPolicyRule{
{
DestinationContainer: to.Ptr("dcont139"),
Filters: &armstorage.ObjectReplicationPolicyFilter{
PrefixMatch: []*string{
to.Ptr("blobA"),
to.Ptr("blobB")},
},
RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
SourceContainer: to.Ptr("scont139"),
},
{
DestinationContainer: to.Ptr("dcont179"),
SourceContainer: to.Ptr("scont179"),
}},
SourceAccount: to.Ptr("src1122"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ObjectReplicationPolicy = armstorage.ObjectReplicationPolicy{
// Name: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Type: to.Ptr("Microsoft.Storage/storageAccounts/objectReplicationPolicies"),
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f"),
// Properties: &armstorage.ObjectReplicationPolicyProperties{
// DestinationAccount: to.Ptr("dst112"),
// PolicyID: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Rules: []*armstorage.ObjectReplicationPolicyRule{
// {
// DestinationContainer: to.Ptr("destContainer1"),
// Filters: &armstorage.ObjectReplicationPolicyFilter{
// PrefixMatch: []*string{
// to.Ptr("blobA"),
// to.Ptr("blobB")},
// },
// RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
// SourceContainer: to.Ptr("sourceContainer1"),
// },
// {
// DestinationContainer: to.Ptr("dcont179"),
// RuleID: to.Ptr("cfbb4bc2-8b60-429f-b05a-d1e0942b33b2"),
// SourceContainer: to.Ptr("scont179"),
// }},
// SourceAccount: to.Ptr("src1122"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { StorageManagementClient } = require("@azure/arm-storage");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Create or update the object replication policy of the storage account.
*
* @summary Create or update the object replication policy of the storage account.
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json
*/
async function storageAccountUpdateObjectReplicationPolicyOnDestination() {
const subscriptionId = process.env["STORAGE_SUBSCRIPTION_ID"] || "{subscription-id}";
const resourceGroupName = process.env["STORAGE_RESOURCE_GROUP"] || "res7687";
const accountName = "dst112";
const objectReplicationPolicyId = "2a20bb73-5717-4635-985a-5d4cf777438f";
const properties = {
destinationAccount: "dst112",
rules: [
{
destinationContainer: "dcont139",
filters: { prefixMatch: ["blobA", "blobB"] },
ruleId: "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
sourceContainer: "scont139",
},
{ destinationContainer: "dcont179", sourceContainer: "scont179" },
],
sourceAccount: "src1122",
};
const credential = new DefaultAzureCredential();
const client = new StorageManagementClient(credential, subscriptionId);
const result = await client.objectReplicationPoliciesOperations.createOrUpdate(
resourceGroupName,
accountName,
objectReplicationPolicyId,
properties
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f",
"name": "2a20bb73-5717-4635-985a-5d4cf777438f",
"type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies",
"properties": {
"policyId": "2a20bb73-5717-4635-985a-5d4cf777438f",
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "sourceContainer1",
"destinationContainer": "destContainer1",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
]
}
},
{
"ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2",
"sourceContainer": "scont179",
"destinationContainer": "dcont179"
}
]
}
}
StorageAccountUpdateObjectReplicationPolicyOnSource
Sample Request
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f?api-version=2023-01-01
{
"properties": {
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "scont139",
"destinationContainer": "dcont139",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
]
}
},
{
"ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2",
"sourceContainer": "scont179",
"destinationContainer": "dcont179"
}
]
}
}
import com.azure.resourcemanager.storage.fluent.models.ObjectReplicationPolicyInner;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyFilter;
import com.azure.resourcemanager.storage.models.ObjectReplicationPolicyRule;
import java.util.Arrays;
/** Samples for ObjectReplicationPoliciesOperation CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/
* StorageAccountUpdateObjectReplicationPolicyOnSource.json
*/
/**
* Sample code: StorageAccountUpdateObjectReplicationPolicyOnSource.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
storageAccountUpdateObjectReplicationPolicyOnSource(com.azure.resourcemanager.AzureResourceManager azure) {
azure.storageAccounts().manager().serviceClient().getObjectReplicationPoliciesOperations()
.createOrUpdateWithResponse("res7687", "src1122", "2a20bb73-5717-4635-985a-5d4cf777438f",
new ObjectReplicationPolicyInner().withSourceAccount("src1122").withDestinationAccount("dst112")
.withRules(
Arrays.asList(
new ObjectReplicationPolicyRule().withRuleId("d5d18a48-8801-4554-aeaa-74faf65f5ef9")
.withSourceContainer("scont139").withDestinationContainer("dcont139")
.withFilters(new ObjectReplicationPolicyFilter()
.withPrefixMatch(Arrays.asList("blobA", "blobB"))),
new ObjectReplicationPolicyRule().withRuleId("cfbb4bc2-8b60-429f-b05a-d1e0942b33b2")
.withSourceContainer("scont179").withDestinationContainer("dcont179"))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.storage import StorageManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-storage
# USAGE
python storage_account_update_object_replication_policy_on_source.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = StorageManagementClient(
credential=DefaultAzureCredential(),
subscription_id="{subscription-id}",
)
response = client.object_replication_policies.create_or_update(
resource_group_name="res7687",
account_name="src1122",
object_replication_policy_id="2a20bb73-5717-4635-985a-5d4cf777438f",
properties={
"properties": {
"destinationAccount": "dst112",
"rules": [
{
"destinationContainer": "dcont139",
"filters": {"prefixMatch": ["blobA", "blobB"]},
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "scont139",
},
{
"destinationContainer": "dcont179",
"ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2",
"sourceContainer": "scont179",
},
],
"sourceAccount": "src1122",
}
},
)
print(response)
# x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armstorage_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/0baf811c3c76c87b3c127d098519bd97141222dd/specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json
func ExampleObjectReplicationPoliciesClient_CreateOrUpdate_storageAccountUpdateObjectReplicationPolicyOnSource() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armstorage.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewObjectReplicationPoliciesClient().CreateOrUpdate(ctx, "res7687", "src1122", "2a20bb73-5717-4635-985a-5d4cf777438f", armstorage.ObjectReplicationPolicy{
Properties: &armstorage.ObjectReplicationPolicyProperties{
DestinationAccount: to.Ptr("dst112"),
Rules: []*armstorage.ObjectReplicationPolicyRule{
{
DestinationContainer: to.Ptr("dcont139"),
Filters: &armstorage.ObjectReplicationPolicyFilter{
PrefixMatch: []*string{
to.Ptr("blobA"),
to.Ptr("blobB")},
},
RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
SourceContainer: to.Ptr("scont139"),
},
{
DestinationContainer: to.Ptr("dcont179"),
RuleID: to.Ptr("cfbb4bc2-8b60-429f-b05a-d1e0942b33b2"),
SourceContainer: to.Ptr("scont179"),
}},
SourceAccount: to.Ptr("src1122"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ObjectReplicationPolicy = armstorage.ObjectReplicationPolicy{
// Name: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Type: to.Ptr("Microsoft.Storage/storageAccounts/objectReplicationPolicies"),
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f"),
// Properties: &armstorage.ObjectReplicationPolicyProperties{
// DestinationAccount: to.Ptr("dst112"),
// EnabledTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2019-06-08T03:01:55.716Z"); return t}()),
// PolicyID: to.Ptr("2a20bb73-5717-4635-985a-5d4cf777438f"),
// Rules: []*armstorage.ObjectReplicationPolicyRule{
// {
// DestinationContainer: to.Ptr("destContainer1"),
// Filters: &armstorage.ObjectReplicationPolicyFilter{
// PrefixMatch: []*string{
// to.Ptr("blobA"),
// to.Ptr("blobB")},
// },
// RuleID: to.Ptr("d5d18a48-8801-4554-aeaa-74faf65f5ef9"),
// SourceContainer: to.Ptr("sourceContainer1"),
// },
// {
// DestinationContainer: to.Ptr("dcont179"),
// RuleID: to.Ptr("cfbb4bc2-8b60-429f-b05a-d1e0942b33b2"),
// SourceContainer: to.Ptr("scont179"),
// }},
// SourceAccount: to.Ptr("src1122"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { StorageManagementClient } = require("@azure/arm-storage");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Create or update the object replication policy of the storage account.
*
* @summary Create or update the object replication policy of the storage account.
* x-ms-original-file: specification/storage/resource-manager/Microsoft.Storage/stable/2023-01-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json
*/
async function storageAccountUpdateObjectReplicationPolicyOnSource() {
const subscriptionId = process.env["STORAGE_SUBSCRIPTION_ID"] || "{subscription-id}";
const resourceGroupName = process.env["STORAGE_RESOURCE_GROUP"] || "res7687";
const accountName = "src1122";
const objectReplicationPolicyId = "2a20bb73-5717-4635-985a-5d4cf777438f";
const properties = {
destinationAccount: "dst112",
rules: [
{
destinationContainer: "dcont139",
filters: { prefixMatch: ["blobA", "blobB"] },
ruleId: "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
sourceContainer: "scont139",
},
{
destinationContainer: "dcont179",
ruleId: "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2",
sourceContainer: "scont179",
},
],
sourceAccount: "src1122",
};
const credential = new DefaultAzureCredential();
const client = new StorageManagementClient(credential, subscriptionId);
const result = await client.objectReplicationPoliciesOperations.createOrUpdate(
resourceGroupName,
accountName,
objectReplicationPolicyId,
properties
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f",
"name": "2a20bb73-5717-4635-985a-5d4cf777438f",
"type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies",
"properties": {
"policyId": "2a20bb73-5717-4635-985a-5d4cf777438f",
"enabledTime": "2019-06-08T03:01:55.7168089Z",
"sourceAccount": "src1122",
"destinationAccount": "dst112",
"rules": [
{
"ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9",
"sourceContainer": "sourceContainer1",
"destinationContainer": "destContainer1",
"filters": {
"prefixMatch": [
"blobA",
"blobB"
]
}
},
{
"ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2",
"sourceContainer": "scont179",
"destinationContainer": "dcont179"
}
]
}
}
Definicje
Nazwa |
Opis |
ErrorResponse
|
Odpowiedź o błędzie od dostawcy zasobów magazynu.
|
ErrorResponseBody
|
Kontrakt treści odpowiedzi na błąd.
|
ObjectReplicationPolicy
|
Zasady replikacji między dwoma kontami magazynu. W jednej zasadach można zdefiniować wiele reguł.
|
ObjectReplicationPolicyFilter
|
Filtry ograniczają replikację do podzbioru obiektów blob w ramach konta magazynu. Wartość logiczna OR jest wykonywana na wartościach w filtrze. Jeśli zdefiniowano wiele filtrów, dla wszystkich filtrów jest wykonywana wartość logiczna AND.
|
ObjectReplicationPolicyRule
|
Reguła zasad replikacji między dwoma kontenerami.
|
ErrorResponse
Odpowiedź o błędzie od dostawcy zasobów magazynu.
Nazwa |
Typ |
Opis |
error
|
ErrorResponseBody
|
Treść odpowiedzi dostawcy zasobów usługi Azure Storage.
|
ErrorResponseBody
Kontrakt treści odpowiedzi na błąd.
Nazwa |
Typ |
Opis |
code
|
string
|
Identyfikator błędu. Kody są niezmienne i mają być używane programowo.
|
message
|
string
|
Komunikat opisujący błąd, który ma być odpowiedni do wyświetlania w interfejsie użytkownika.
|
ObjectReplicationPolicy
Zasady replikacji między dwoma kontami magazynu. W jednej zasadach można zdefiniować wiele reguł.
Nazwa |
Typ |
Opis |
id
|
string
|
W pełni kwalifikowany identyfikator zasobu dla zasobu. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
Nazwa zasobu
|
properties.destinationAccount
|
string
|
Wymagane. Nazwa konta docelowego. Powinien on mieć pełny identyfikator zasobu, jeśli parametr allowCrossTenantReplication ma wartość false.
|
properties.enabledTime
|
string
|
Wskazuje, kiedy zasady są włączone na koncie źródłowym.
|
properties.policyId
|
string
|
Unikatowy identyfikator zasad replikacji obiektów.
|
properties.rules
|
ObjectReplicationPolicyRule[]
|
Reguły replikacji obiektów konta magazynu.
|
properties.sourceAccount
|
string
|
Wymagane. Nazwa konta źródłowego. Powinien on mieć pełny identyfikator zasobu, jeśli parametr allowCrossTenantReplication ma wartość false.
|
type
|
string
|
Typ zasobu. Np. "Microsoft.Compute/virtualMachines" lub "Microsoft.Storage/storageAccounts"
|
ObjectReplicationPolicyFilter
Filtry ograniczają replikację do podzbioru obiektów blob w ramach konta magazynu. Wartość logiczna OR jest wykonywana na wartościach w filtrze. Jeśli zdefiniowano wiele filtrów, dla wszystkich filtrów jest wykonywana wartość logiczna AND.
Nazwa |
Typ |
Opis |
minCreationTime
|
string
|
Obiekty blob utworzone po upływie czasu zostaną zreplikowane do miejsca docelowego. Musi być w formacie data/godzina "rrrr-MM-ddTHH:mm:ssZ". Przykład: 2020-02-19T16:05:00Z
|
prefixMatch
|
string[]
|
Opcjonalny. Filtruje wyniki, aby replikować tylko obiekty blob, których nazwy zaczynają się od określonego prefiksu.
|
ObjectReplicationPolicyRule
Reguła zasad replikacji między dwoma kontenerami.
Nazwa |
Typ |
Opis |
destinationContainer
|
string
|
Wymagane. Nazwa kontenera docelowego.
|
filters
|
ObjectReplicationPolicyFilter
|
Opcjonalny. Obiekt definiujący zestaw filtrów.
|
ruleId
|
string
|
Identyfikator reguły jest generowany automatycznie dla każdej nowej reguły na koncie docelowym. Jest to wymagane do umieszczenia zasad na koncie źródłowym.
|
sourceContainer
|
string
|
Wymagane. Nazwa kontenera źródłowego.
|