Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Käytä salaisuuksia tarjotaksesi arkaluontoisia konfiguraatioita, kuten henkilökohtaisia pääsytunnuksia ja API-avaimia, toimintoihisi. Älä koskaan koodaa salaisia arvoja lähdekoodiin tai paljasta niitä frontendille. Lue ne ajonaikaisesti soittamalla ctx.getSecret().
Edellytykset
- Fabric-sovellus, jossa toiminnot on alustettu. Asennusohjeet löydät kohdasta Use Functions in Fabric Apps.
- Sovellus julkaistiin ainakin kerran .
npx rayfin uprayfin secret setjarayfin secret listkohdistaa aktiiviseen käyttöön otettuun kohteeseen ja epäonnistua, kun etäpäätepisteitä ei ole. - Salainen arvo, jota toimintosi vaatii.
Aseta salaisuus
Sovelluksen juuresta ota funktiotoiminto käyttöön ja aseta salaisuus:
npx rayfin secret set API_KEY
Komento pyytää arvoa ja peittää syötteesi. Päivittääksesi olemassa olevan salaisuuden, suorita sama komento uudelleen. Uusi arvo korvaa olemassa olevan arvon.
Tärkeää
Älä sisällytä komentoon salaista arvoa tai sitoa sitä lähdekoodin hallintaan.
Listan salaisuudet
Listaa konfiguroidut salaiset nimet:
npx rayfin secret list
Komento näyttää salaiset nimet ja aikaleimat, mutta ei koskaan näytä salaisia arvoja.
Pääsy salaisuuteen funktiosta
Soita ctx.getSecret('NAME') hakeaksesi salaisuuden nykyiselle kutsulle. Metodi palautuu undefined , kun salaisuutta ei ole konfiguroitu, joten käsittele valinnaiset salaisuudet eksplisiittisesti tai anna sopiva ei-salaisuusoletus.
Seuraava funktio hakee tiedoston GitHub-varastosta. Julkiset tietovarastot eivät vaadi henkilökohtaista pääsytunnusta (PAT). Yksityisissä arkistoissa funktio lisää GITHUB_PAT salaisuuden pyyntöön:
import {
UserDataFunctions,
type RayfinContext,
} from '@microsoft/fabric-user-data-functions';
const udf = new UserDataFunctions();
udf.func(
'getGitHubFile',
async (
owner: string,
repo: string,
path: string,
ref: string,
ctx: RayfinContext,
): Promise<string> => {
const pat = ctx.getSecret('GITHUB_PAT');
const headers: Record<string, string> = {
Accept: 'application/vnd.github.raw+json',
'User-Agent': 'rayfin-app',
};
if (pat) {
headers.Authorization = `Bearer ${pat}`;
}
const encodedPath = path
.split('/')
.map(encodeURIComponent)
.join('/');
const url =
`https://api.github.com/repos/${encodeURIComponent(owner)}/` +
`${encodeURIComponent(repo)}/contents/${encodedPath}` +
`?ref=${encodeURIComponent(ref || 'main')}`;
const response = await fetch(url, { headers });
if (!response.ok) {
throw new Error(`GitHub ${response.status}: ${await response.text()}`);
}
return response.text();
},
[],
);
Tyhjä yhteystaulukko tarkoittaa, ettei funktio ilmoita ulkoista resurssiyleisöä. PAT on salaisuus, ei alustan tarjoama resurssitoken.
Määritä salaisuudet ympäristön mukaan
Anna salaiset arvot ympäristössä, jossa funktio suoritetaan:
-
Paikallinen kehitys: Lisää
Valuessalaiset arvot osaan .rayfin/functions/local.settings.jsonPaikallinen Functions-isäntä lukee funktioympäristön arvot tästä tiedostosta. - Fabric: Määritä salaisuudet käyttöönotetulle kohteelle Fabric-portaalissa.
Käytä samaa salaista nimeä jokaisessa ympäristössä. Esimerkiksi konfiguroi GITHUB_PAT se paikallisesti ja Fabric-tilassa, ja lue se ctx.getSecret('API_KEY') molemmissa ympäristöissä.
Tärkeää
Älä sitoudu salaisia arvoja tiedostossa rayfin/functions/local.settings.json tai missään muussa tiedostossa lähdekoodin hallintaan. Tallenna vain ei-salaisia esimerkkejä tai paikkamerkkejä tiedostoihin, jotka olet sitoutunut.
Liittyvä sisältö
- Käytä funktioita Fabric-sovelluksissa
- Ohjelmointimallin yleiskatsaus
Ota käyttöön Fabric-sovellus Fabric