Hanterade identiteter för dokumentöversättning

Hanterade identiteter för Azure-resurser är tjänstens huvudnamn som skapar en Microsoft Entra-identitet och specifika behörigheter för Azure-hanterade resurser. Hanterade identiteter är ett säkrare sätt att bevilja åtkomst till lagringsdata och ersätta kravet på att du ska inkludera signaturtoken för delad åtkomst (SAS) med dina käll- och mål-URL:er.

Screenshot of managed identity flow (RBAC).

  • Du kan använda hanterade identiteter för att bevilja åtkomst till alla resurser som stöder Microsoft Entra-autentisering, inklusive dina egna program.

  • Om du vill bevilja åtkomst till en Azure-resurs tilldelar du en Azure-roll till en hanterad identitet med hjälp av rollbaserad åtkomstkontroll i Azure (Azure RBAC).

  • Det finns ingen extra kostnad för att använda hanterade identiteter i Azure.

Viktigt!

  • När du använder hanterade identiteter ska du inte inkludera en SAS-token-URL med dina HTTP-begäranden– dina begäranden misslyckas. Att använda hanterade identiteter ersätter kravet på att du ska inkludera signaturtoken för delad åtkomst (SAS) med dina käll- och mål-URL:er.

  • Om du vill använda hanterade identiteter för dokumentöversättningsåtgärder måste du skapa din Translator-resurs i en specifik geografisk Azure-region, till exempel USA, östra. Om din Translator-resursregion är inställd på Global kan du inte använda hanterad identitet för dokumentöversättning. Du kan fortfarande använda signaturtoken för delad åtkomst (SAS) för dokumentöversättning.

  • Dokumentöversättning är endast tillgängligt i S1 Standard Service Plan (Betala per användning) eller I D3-volymrabattplanen. SePrissättning för Azure AI-tjänster – Translator.

Förutsättningar

Du behöver följande för att komma igång:

  • Ett aktivt Azure-konto – om du inte har något kan du skapa ett kostnadsfritt konto.

  • En Translator-resurs med en enda tjänst (inte en Azure AI-tjänst med flera tjänster) som tilldelats en geografisk region, till exempel USA, västra. Detaljerade steg finns iSkapa en resurs med flera tjänster.

  • En kort förståelse för rollbaserad åtkomstkontroll i Azure (Azure RBAC) med hjälp av Azure-portalen.

  • Ett Azure Blob Storage-konto i samma region som din Translator-resurs. Du måste också skapa containrar för att lagra och organisera dina blobdata i ditt lagringskonto.

  • Om ditt lagringskonto finns bakom en brandvägg måste du aktivera följande konfiguration:

    1. Gå till Azure-portalen och logga in på ditt Azure-konto.

    2. Välj lagringskontot.

    3. I gruppen Säkerhet + nätverk i den vänstra rutan väljer du Nätverk.

    4. På fliken Brandväggar och virtuella nätverk väljer du Aktiverad från valda virtuella nätverk och IP-adresser.

      Screenshot: Selected networks radio button selected.

    5. Avmarkera alla kryssrutor.

    6. Kontrollera att Microsofts nätverksroutning är markerad.

    7. Under avsnittet Resursinstanser väljer du Microsoft.CognitiveServices/accounts som resurstyp och väljer din Translator-resurs som instansnamn.

    8. Kontrollera att rutan Tillåt Azure-tjänster i listan över betrodda tjänster att komma åt det här lagringskontot är markerad. Mer information om hur du hanterar undantag finns iKonfigurera Azure Storage-brandväggar och virtuella nätverk.

      Screenshot: allow trusted services checkbox, portal view.

    9. Välj Spara.

      Kommentar

      Det kan ta upp till 5 minuter innan nätverksändringarna sprids.

    Även om nätverksåtkomst nu är tillåten kan translator-resursen fortfarande inte komma åt data i lagringskontot. Du måste skapa en hanterad identitet för och tilldela en specifik åtkomstroll till din Translator-resurs.

Hanterade identitetstilldelningar

Det finns två typer av hanterade identiteter: systemtilldelade och användartilldelade. Dokumentöversättning stöder för närvarande systemtilldelad hanterad identitet:

  • En systemtilldelad hanterad identitet aktiveras direkt på en tjänstinstans. Den är inte aktiverad som standard. du måste gå till resursen och uppdatera identitetsinställningen.

  • Den systemtilldelade hanterade identiteten är kopplad till din resurs under hela livscykeln. Om du tar bort resursen tas även den hanterade identiteten bort.

I följande steg aktiverar vi en systemtilldelad hanterad identitet och ger din Translator-resurs begränsad åtkomst till ditt Azure Blob Storage-konto.

Aktivera en systemtilldelad hanterad identitet

Du måste ge Translator-resursen åtkomst till ditt lagringskonto innan den kan skapa, läsa eller ta bort blobar. När du har aktiverat Translator-resursen med en systemtilldelad hanterad identitet kan du använda rollbaserad åtkomstkontroll i Azure (Azure RBAC) för att ge Translator åtkomst till dina Azure Storage-containrar.

  1. Gå till Azure-portalen och logga in på ditt Azure-konto.

  2. Välj Translator-resursen.

  3. I gruppen Resurshantering i den vänstra rutan väljer du Identitet.

  4. På fliken Systemtilldelat aktiverar du växlingsknappen Status .

    Screenshot: resource management identity tab in the Azure portal.

    Viktigt!

    Användartilldelad hanterad identitet uppfyller inte kraven för scenariot med batch-transkriptionslagringskontot. Se till att aktivera systemtilldelad hanterad identitet.

  5. Välj Spara.

Bevilja åtkomst till lagringskontot för din Translator-resurs

Viktigt!

Om du vill tilldela en systemtilldelad hanterad identitetsroll behöver du Behörigheter för Microsoft.Authorization/roleAssignments/write, till exempel Ägare eller Administratör för användaråtkomst i lagringsomfånget för lagringsresursen.

  1. Gå till Azure-portalen och logga in på ditt Azure-konto.

  2. Välj Translator-resursen.

  3. I gruppen Resurshantering i den vänstra rutan väljer du Identitet.

  4. Under Behörigheter väljer du Azure-rolltilldelningar:

    Screenshot: enable system-assigned managed identity in Azure portal.

  5. På sidan Azure-rolltilldelningar som öppnades väljer du din prenumeration på den nedrullningsbara menyn och väljer sedan + Lägg till rolltilldelning.

    Screenshot: Azure role assignments page in the Azure portal.

  6. Tilldela sedan rollen Storage Blob Data Contributor till din Translator-tjänstresurs. Rollen Storage Blob Data Contributor ger Translator (representeras av den systemtilldelade hanterade identiteten) läs-, skriv- och borttagningsåtkomst till blobcontainern och data. I popup-fönstret Lägg till rolltilldelning fyller du i fälten på följande sätt och väljer Spara:

    Fält Värde
    Definitionsområde Lagring.
    Abonnemang Prenumerationen som är associerad med din lagringsresurs.
    Resurs Namnet på lagringsresursen.
    Roll Storage Blob Data-deltagare.

    Screenshot: add role assignments page in the Azure portal.

  7. När bekräftelsemeddelandet Om rolltilldelning har lagts till visas uppdaterar du sidan för att se den tillagda rolltilldelningen.

    Screenshot: Added role assignment confirmation pop-up message.

  8. Om du inte ser den nya rolltilldelningen direkt väntar du och försöker uppdatera sidan igen. När du tilldelar eller tar bort rolltilldelningar kan det ta upp till 30 minuter innan ändringarna börjar gälla.

    Screenshot: Azure role assignments window.

HTTP-begäranden

  • En asynkron batchöversättningsbegäran skickas till translator-tjänstslutpunkten via en POST-begäran.

  • Med hanterad identitet och Azure RBACbehöver du inte längre inkludera SAS-URL:er.

  • Om det lyckas returnerar POST-metoden en 202 Accepted svarskod och tjänsten skapar en batchbegäran.

  • De översatta dokumenten visas i målcontainern.

Sidhuvuden

Följande rubriker ingår i varje BEGÄRAN om API för dokumentöversättning:

HTTP-huvud beskrivning
Ocp-Apim-Subscription-Key Obligatoriskt: Värdet är Azure-nyckeln för din Translator- eller Azure AI-tjänstresurs.
Innehållstyp Obligatoriskt: Anger innehållstypen för nyttolasten. Godkända värden är application/json eller charset=UTF-8.

POST-begärandetext

  • Begärande-URL:en är POST https://<NAME-OF-YOUR-RESOURCE>.cognitiveservices.azure.com/translator/text/batch/v1.1/batches.
  • Begärandetexten är ett JSON-objekt med namnet inputs.
  • Objektet inputs innehåller både sourceURL och targetURL containeradresser för dina käll- och målspråkpar. Med systemtilldelad hanterad identitet använder du en vanlig URL för lagringskonto (ingen SAS eller andra tillägg). Formatet är https://<storage_account_name>.blob.core.windows.net/<container_name>.
  • Fälten prefix och suffix (valfritt) används för att filtrera dokument i containern, inklusive mappar.
  • Ett värde för fältet glossaries (valfritt) tillämpas när dokumentet översätts.
  • För targetUrl varje målspråk måste vara unikt.

Viktigt!

Om det redan finns en fil med samma namn i målet misslyckas jobbet. När du använder hanterade identiteter ska du inte inkludera en SAS-token-URL med dina HTTP-begäranden. Om du gör det misslyckas dina begäranden.

Översätta alla dokument i en container

Det här exempelbegärandetexten refererar till en källcontainer för alla dokument som ska översättas till ett målspråk.

Mer information finns ibegärandeparametrar.

{
    "inputs": [
        {
            "source": {
                "sourceUrl": "https://<storage_account_name>.blob.core.windows.net/<source_container_name>"
            },
            "targets": [
                {
                    "targetUrl": "https://<storage_account_name>.blob.core.windows.net/<target_container_name>"
                    "language": "fr"
                }
            ]
        }
    ]
}

Översätta ett visst dokument i en container

Det här exempelbegärandetexten refererar till ett enda källdokument som ska översättas till två målspråk.

Viktigt!

Förutom de parametrar för begäran som antecknades tidigare måste du inkludera "storageType": "File". Annars antas käll-URL:en vara på containernivå.

{
    "inputs": [
        {
            "storageType": "File",
            "source": {
                "sourceUrl": "https://<storage_account_name>.blob.core.windows.net/<source_container_name>/source-english.docx"
            },
            "targets": [
                {
                    "targetUrl": "https://<storage_account_name>.blob.core.windows.net/<target_container_name>/Target-Spanish.docx"
                    "language": "es"
                },
                {
                    "targetUrl": "https://<storage_account_name>.blob.core.windows.net/<target_container_name>/Target-German.docx",
                    "language": "de"
                }
            ]
        }
    ]
}

Översätta alla dokument i en container med hjälp av en anpassad ordlista

Det här exempelbegärandetexten refererar till en källcontainer för alla dokument som ska översättas till ett målspråk med hjälp av en ordlista.

Mer information finns ibegärandeparametrar.

{
    "inputs": [
        {
            "source": {
                "sourceUrl": "https://<storage_account_name>.blob.core.windows.net/<source_container_name>",
                "filter": {
                    "prefix": "myfolder/"
                }
            },
            "targets": [
                {
                    "targetUrl": "https://<storage_account_name>.blob.core.windows.net/<target_container_name>",
                    "language": "es",
                    "glossaries": [
                        {
                            "glossaryUrl": "https://<storage_account_name>.blob.core.windows.net/<glossary_container_name>/en-es.xlf",
                            "format": "xliff"
                        }
                    ]
                }
            ]
        }
    ]
}

Toppen! Du har precis lärt dig hur du aktiverar och använder en systemtilldelad hanterad identitet. Med hanterad identitet för Azure-resurser och Azure RBAChar du beviljat Translator specifika åtkomsträttigheter till din lagringsresurs utan att inkludera SAS-token med dina HTTP-begäranden.

Nästa steg