Azure ๋ฆฌ์์ค ๊ทธ๋ฃน ๊ด๋ฆฌ API ๋ ํผ๋ฐ์ค
ํ๋ก์ ํธ(CSN)์ Azure ๋ฆฌ์์ค ๊ทธ๋ฃน(RG)์ ๋งคํ์ ์กฐํยท๋ฑ๋ก/์์ ยท์ญ์ ํ๋ API ์์ธ ๋ช ์ธ์ ๋๋ค. ํ๋ฉด ๊ธฐ๋ฅ Azure ๋ฆฌ์์ค ๊ทธ๋ฃน ๊ด๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋์ผํ API์ ๋๋ค.
๐ ๊ฐ์
CSNโAzure RG ๋งคํ API๋ giipApi ์๋ํฌ์ธํธ๋ฅผ ํตํด text ๋ช
๋ น์ผ๋ก ๋์คํจ์น๋ฉ๋๋ค. ์ธ์ฆ์ AK(byAK) ๋ก ์ด๋ฃจ์ด์ง๋ฉฐ, ์๋ฒ๊ฐ @ak โ dbo.lwGetUSNbyat(@ak) ๋ก ์ฌ์ฉ์๋ฅผ ํ์ธํ ๋ค ๋์ CSN ์์(tCorpUserRel/tCorpUser)์ ๊ฒ์ฆํฉ๋๋ค. ์์์ด ์๋๋ฉด 403์ ๋ฐํํฉ๋๋ค.
- ์๋ํฌ์ธํธ:
POST https://giipfaw.azurewebsites.net/api/giipApi - Content-Type:
application/x-www-form-urlencoded - ์ฃผ์ ํผ ํ๋:
text(๋ช ๋ น๊ณผ ํ๋ผ๋ฏธํฐ ์ด๋ฆ ๋์ด),jsondata(ํ๋ผ๋ฏธํฐ ๊ฐ JSON), ์ธ์ฆ ํค - ๋ฐ์ธ๋ฉ ๊ท์ฝ:
text์ ํ๋ผ๋ฏธํฐ ๋์ด ์์ = SP ํ๋ผ๋ฏธํฐ ์์(positional), ๊ฐ์jsondata์ ํค๋ก ๋งค์นญ๋ฉ๋๋ค.
๐ ์ฃผ์ ๋ช ๋ น
1. ๋งคํ ๋ชฉ๋ก ์กฐํ โ AzureRgList โ pApiAzureRgListbyAK
ํ์ฌ ์ฌ์ฉ์๊ฐ ์ ๊ทผ ๊ฐ๋ฅํ CSN์ RG ๋งคํ ๋ชฉ๋ก์ ์กฐํํฉ๋๋ค.
- text:
AzureRgList csn - jsondata:
{ "csn": <CSN> }(์๋ต ์ ์ ์ ์์ ์ ์ฒด CSN) - ๋ฐํ:
carSn, cSn, carResourceGroup, carSubscriptionId, carSubscriptionName, carLSsn, carNote, carStatus, carRegdt(ํ ๋ชฉ๋ก), ๊ถํ ์์ผ๋ฉดProc_MSG='403|...'
2. ๋งคํ ๋ฑ๋ก/์์ โ AzureRgPut โ pApiAzureRgPutbyAK
์ ๋งคํ์ ๋ฑ๋กํ๊ฑฐ๋ ๊ธฐ์กด ๋งคํ์ ์์ ํฉ๋๋ค(upsert).
- text:
AzureRgPut csn carResourceGroup carSubscriptionId carSubscriptionName carLSsn carNote carSn - jsondata:
{ "csn":<CSN>, "carResourceGroup":"rg-...", "carSubscriptionId":"...", "carSubscriptionName":"...", "carLSsn":<lssn|null>, "carNote":"...", "carSn":<์์ ์ ์ง์ > } - ๊ท์น:
carSn์ง์ ์ update, ๋ฏธ์ง์ ์(cSn, carResourceGroup)์ ๋ํฌ ๊ธฐ์ค upsert - ๋ฐํ:
Proc_MSG200|OK/400|.../403|.../404|Not found
3. ๋งคํ ์ญ์ โ AzureRgDel โ pApiAzureRgDelbyAK
carSn ์ผ๋ก ๋งคํ ํ ๊ฑด์ ์ญ์ ํฉ๋๋ค.
- text:
AzureRgDel carSn - jsondata:
{ "carSn": <carSn> } - ๋ฐํ:
Proc_MSG200|OK/403|.../404|Not found
๐ ๏ธ ํ์ฉ ์์ (cURL)
# 1) CSN 47 ์ RG ๋งคํ ๋ชฉ๋ก ์กฐํ
curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode 'text=AzureRgList csn' \
--data-urlencode 'jsondata={"csn":47}' \
--data-urlencode 'ak=YOUR_AK'
# 2) RG ๋งคํ ๋ฑ๋ก(์ ๊ท)
curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode 'text=AzureRgPut csn carResourceGroup carSubscriptionId carSubscriptionName carLSsn carNote carSn' \
--data-urlencode 'jsondata={"csn":47,"carResourceGroup":"rg-example-prod","carSubscriptionName":"prod-sub","carNote":"์ด์ RG"}' \
--data-urlencode 'ak=YOUR_AK'
๐ก ์ ์ ์ฌํญ
- run.ps1 ๋ฌด์์ ์์น: ์ API๋ SP 3์ข
(
pApiAzureRgListbyAK/pApiAzureRgPutbyAK/pApiAzureRgDelbyAK)๋ง์ผ๋ก ๋์ํฉ๋๋ค. ์ฑ์ญ์ธrun.ps1์ ์์ ํ์ง ์์ต๋๋ค. - ๊ฐ์ CSN ์์์ RG ์ด๋ฆ์ ์ ๋ํฌ(
UNIQUE(cSn, carResourceGroup))ํฉ๋๋ค. ๊ฐ์ ์ด๋ฆ์ผ๋กcarSn์์ดAzureRgPutํ๋ฉด ๊ธฐ์กด ํ์ด ๊ฐฑ์ ๋ฉ๋๋ค. carLSsn์ ๋น์ฉ ์์ค ํํธ๋ก, Azure ๋น์ฉ ์ฐ๋ ํ์ฅ์ ์ฌ์ฉ๋ฉ๋๋ค(ํ ๋ฒ์ ์ ๋งคํ ๊ธฐ๋ฐ ํํฐ/์๊ณ๊น์ง ์ ๊ณต).
๋ฌธ์ ํด๊ฒฐ
| ์ฆ์ | ์์ธ | ํด๊ฒฐ |
|---|---|---|
| `Proc_MSG='403 | ...'` ๋ฐํ | ํธ์ถ ์ฌ์ฉ์๊ฐ ๋์ CSN ์์์ด ์๋ |
AzureRgPut ์ด 400์ ๋ฐํ | ํ์๊ฐ(csn/carResourceGroup) ๋๋ฝ | csn๊ณผ carResourceGroup์ ๋ฐ๋์ ํฌํจํฉ๋๋ค |
| ์๋์น ์๊ฒ ๊ธฐ์กด ๋งคํ์ด ๊ฐฑ์ ๋จ | carSn ์์ด ๊ฐ์ (csn, RG)๋ก ์ฌ๋ฑ๋ก | ์ ๊ท ๋ฑ๋ก์ ์ RG ์ด๋ฆ์ผ๋ก, ์์ ์ carSn์ ๋ช
์ํฉ๋๋ค |
jsondata ํ์ฑ ์ค๋ฅ | JSON ๋ฐ์ดํ ์ด์ค์ผ์ดํ ์ค๋ฅ | jsondata ๊ฐ์ ์ ํจํ JSON์ผ๋ก ์ด์ค์ผ์ดํํ์ฌ ์ ์กํฉ๋๋ค |
RstVal/Proc_MSG๊ฐ 200์ด ์๋ | ํ๋ผ๋ฏธํฐ/๊ถํ ๋ฌธ์ | API ๊ฒฐ๊ณผ ์ฝ๋ ๊ฐ์ด๋๋ฅผ ์ฐธ์กฐํด ์์ธ ์ฝ๋๋ฅผ ํ์ธํฉ๋๋ค |
๋ฒ์ : 1.0
์ต์ข
์
๋ฐ์ดํธ: 2026-07-24
์์ค ํ์ผ: giipv3/public/help/api-azure-rg.ko.md
๊ด๋ จ ๋ฌธ์: