Jaa


Taustatodennuksen ja -valtuutuksen yleiskatsaus

Fabric-kehittäjän kuormitusnäytteen taustapuolella on seuraavat todennustyönkulut.

Fabricilta pyyntöjen todentaminen ja käyttöoikeuksien myöntäminen kuormitukseen

Valtuutusotsikon rakenne

Valtuutusotsikossa käytetään tiettyä tunnusmuotoa:

SubjectAndAppToken1.0 subjectToken="delegated token", appToken="S2S token"

Tämä muoto sisältää kaksi erillistä tunnusta:

  • subjectToken: Delegoitu tunnus, joka edustaa käyttäjää, jonka puolesta toimintoa suoritetaan.
  • appToken: Fabric-sovelluskohtainen tunnus.

Kaksoistunnusotsikon käyttämisen taustalla on kolme eri syytä:

  • Validation: Kuormitus voi varmistaa, että pyyntö on peräisin Fabricista, vahvistamalla appToken.

  • Käyttäjäkonteksti: subjectToken tarjoaa käyttäjäkontekstin suoritettavalle toiminnolle.

  • Palvelun välinen tietoliikenne: Kuormitus voi hankkia OBO-tunnuksen -sovelluksen avulla subjectToken, jolloin se voi kutsua muita palveluja käyttäjätunnuksella.

Todentaminen

SubjectAndAppToken-tunnuksen tärkeimmät todennustarkistukset ovat seuraavat:

  • Valtuutusotsikon arvon vahvistus ja jäsentäminen tehdään AuthenticateControlPlaneCall-menetelmällä . Tunnuksen on alettava SubjectAndAppToken1.0-etuliitteellä, ja siinä on oltava kaksi tunnusta : subjectToken ja appToken.

  • Entra-tunnuksen ominaisuuksien vahvistus: Sekä appToken subjectToken että vahvistetaan yleiset Microsoft Entra -tunnuksen ominaisuudet ValidateAadTokenCommon-menetelmässä. Näitä ominaisuuksia ovat tunnuksen allekirjoitus, tunnuksen elinkaari, tunnuksen käyttäjäryhmä (kuormitussovelluksen kohderyhmä) ja tunnusversio (1.0) ja myöntäjä.

  • appToken-ominaisuuksien vahvistus: -appTokenominaisuudella ei pitäisi olla vaatimustascp, mutta sen arvona pitäisi olla idtyp sovellus. Tarkistamme myös tämän tid vaatimuksen kuormituksen julkaisijan vuokraajatunnuksella.

    Esimerkki appToken-väitteistä:

    {
    "aud": "api://localdevinstance/00001111-aaaa-2222-bbbb-3333cccc4444/Fabric.WorkloadSample/123",
    "iss": "https://sts.windows.net/12345678-77f3-4fcc-bdaa-487b920cb7ee/",
    "iat": 1700047232,
    "nbf": 1700047232,
    "exp": 1700133932,
    "aio": "E2VgYLjBuv2l+c6cmm/iP/bnL2v+AQA=",
    "appid": "11112222-bbbb-3333-cccc-4444dddd5555"
    "appidacr": "2",
    "idp": "https://sts.windows.net/12345678-77f3-4fcc-bdaa-487b920cb7ee/",
    "idtyp": "app",
    "oid": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
    "rh": "0.ACgAGX-u-vN3zE-9qkh7kgy37hQbaU7-v2xFr59O_foS7VLZAAA.",
    "sub": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
    "tid": "bbbbcccc-1111-dddd-2222-eeee3333ffff",
    "uti": "5bgMXs3uMUSAHCruRjACAA",
    "ver": "1.0"
    }
    
  • subjectToken-ominaisuuksien vahvistus: Varmista, että subjectToken-tunnus sisältää scp käyttökelpoisuuden sisältävän vaatimuksen FabricWorkloadControl , että tunnuksen sisällä ei idtyp ole vaatimusta ja että sillä on sama appid kuin kohteessa appToken.

    Esimerkki aiheentokennosta:

    {
    "aud": "api://localdevinstance/00001111-aaaa-2222-bbbb-3333cccc4444/Fabric.WorkloadSample/123",
    "iss": "https://sts.windows.net/12345678-77f3-4fcc-bdaa-487b920cb7ee/",
    "iat": 1700050446,
    "nbf": 1700050446,
    "exp": 1700054558,
    "acr": "1",
    "aio": "ATQAy/8VAAAAUgWRMRnBo4VGHvrKRykUXOXBNKS1cHnBxLrYkZJJGSjAVyJGBecbLdSud1GUakER",
    "amr": [
        "pwd"
    ],
    "appid": "11112222-bbbb-3333-cccc-4444dddd5555"
    "appidacr": "2",
    "ipaddr": "46.117.19.50",
    "name": "john doe",
    "oid": "bbbbbbbb-1111-2222-3333-cccccccccccc",
    "rh": "0.ASgAGX-u-vN3zE-9qkh7kgy37hQbaU7-v2xFr59O_foS7VLZANQ.",
    "scp": "FabricWorkloadControl",
    "sub": "X0Wl85UA-uOmdkQz5MoT-hEgYZXDq9FYdS8g2bFUaZA",
    "tid": "bbbbcccc-1111-dddd-2222-eeee3333ffff",
    "unique_name": "user1@constso.com",
    "upn": "user1@constso.com",
    "uti": "_llZwmJoSUiHv-kw6tfDAA",
    "ver": "1.0"
    }
    

Katso IAuthenticationService.

Muistiinpano

Kaikki mallikoodimme vahvistukset koskevat version 1.0 tunnuksia.

Valtuutus

Kun Fabric vahvisti pyynnön olevan peräisin Fabric-palvelusta (kohteen kautta appToken), hän varmisti, että käyttäjällä on Fabric-käyttöoikeuksien metatietojen perusteella tarvittavat oikeudet toiminnon suorittamiseen.

Pyyntöjen todentaminen ja käyttöoikeuksien myöntäminen kuormituksesta Fabriciin

Kuormituksen hallintapyynnöt

Kuormituksenhallinnan ohjelmointirajapinnat ovat erityisiä Fabric-ohjelmointirajapintoja, jotka tukevat kuormituksia Fabric-kohteen elinkaaren hallinnan avulla. Nämä ohjelmointirajapinnat käyttävät samaa SubjectAndAppToken1.0-valtuutuksen otsikkomuotoa.

SubjectAndAppToken1.0 subjectToken="delegated token", appToken="S2S token"

Kuormituksesta tulevat kutsut, jotka sisälsivät seuraavat tunnukset:

  • subjectToken: Käyttäjän delegoima tunnus (saatu OBO-työnkulun kautta), joka edustaa käyttäjää, jonka puolesta toimintoa suoritetaan. Fabric tarkistaa, että käyttäjällä on tarvittavat oikeudet tarvittavan toiminnon suorittamiseen.

  • appToken: Kuormitussovellukselle määritetty tunnus. Fabric tarkistaa, että tämä tunnus on peräisin Microsoft Entra -sovelluksesta kuormituksesta, johon asianmukainen Fabric-kohde kuuluu ja joka on kuormituksen julkaisijan vuokraajassa.

ValidatePermissions Katso -menetelmä kohdassa Valtuutuskäsite.

Julkiset ohjelmointirajapinnat

Jos haluat kutsua julkisia Fabric-ohjelmointirajapintoja, kuormituksen tulee hankkia Microsoft Entra OBO -vakiotunnus, joka sisältää asiaankuuluvat ohjelmointirajapinnan vaikutusalueet, ja välittää se haltijatunnuksena pyynnön käyttöoikeuksien myöntämisen otsikkoon.

Katso FabricExtensionController.

Pyyntöjen todentaminen ja käyttöoikeuksien myöntäminen kuormituksesta FE kuormitukseen BE

Valtuutuksen otsikko

Valtuutusotsikko pyynnössä, joka lähetetään kuormituksen FE:stä kuormitukseen BE käyttää vakio haltijatunnusta.

Todentaminen

AuthenticateControlPlaneCall-menetelmä kuormituksessa BE on vastuussa tunnuksen vahvistamisesta. Ensisijaiset suoritettavat tarkistukset ovat seuraavat:

  • Tunnuksen elinikä: Varmistaa, että tunnuksen käyttöaika on kelvollinen.

  • Allekirjoitus: Tarkistaa tunnuksen todentamisen.

  • Kohderyhmä: tarkistaa, että tunnuksen yleisö vastaa Microsoft Entra -sovelluksen kuormitusmäärää.

  • Myöntäjä: vahvistaa tunnuksen myöntäjän.

  • Sallitut vaikutusalueet: Vahvistaa vaikutusalueet, joita tunnus saa käyttää.

Valtuutus tehdään käynnistämällä ValidatePermissions-menetelmä . Tämä menetelmä kutsuu Fabric-kuormituksenhallinnan resolvePermissions päätepisteen ohjelmointirajapintaa asianomaiselle Fabric-kohteelle ja tarkistaa, että käyttäjällä on tarvittavat käyttöoikeudet toimintoon.

Pitkäkestoiset toiminnot – päivitystunnus

Valtuutus tehdään käynnistämällä ValidatePermissions-menetelmä . Tämä menetelmä kutsuu Fabric-kuormituksenhallinnan resolvePermissions päätepisteen ohjelmointirajapintaa asianomaiselle Fabric-kohteelle ja tarkistaa, että käyttäjällä on tarvittavat käyttöoikeudet toimintoon.

Jos kuormituksiisi sisältyy esimerkiksi pitkäkestoisia toimintoja osana JobScheduleria, saatat törmätä tilanteeseen, jossa tunnuksen elinkaari ei riitä. Jos haluat lisätietoja pitkäkestoisen prosessin todentamisesta, pitkäkestoiset OBO-prosessit.