Cloud Billing API ์•ก์„ธ์Šค ์ œ์–ด

Google Cloud ๋Š” ํŠน์ • Google Cloud ๋ฆฌ์†Œ์Šค์—๋Š” ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๊ณ , ๋‹ค๋ฅธ ๋ฆฌ์†Œ์Šค์—๋Š” ๋ถ€์—ฌํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” Identity and Access Management(IAM)๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. IAM์€ ์ตœ์†Œ ๊ถŒํ•œ์˜ ๋ณด์•ˆ ์›์น™์„ ์ฑ„ํƒํ•˜์—ฌ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ํ•„์š”ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ๋งŒ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.

IAM์„ ์‚ฌ์šฉํ•˜๋ฉด IAM ํ—ˆ์šฉ ์ •์ฑ…์„ ์„ค์ •ํ•˜์—ฌ ์–ด๋– ํ•œ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ๋ˆ„๊ตฌ(์‚ฌ์šฉ์ž)์—๊ฒŒ ์–ด๋– ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ(์—ญํ• )์ด ์žˆ๋Š”์ง€ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ—ˆ์šฉ ์ •์ฑ…์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํŠน์ • ์—ญํ• ์„ ๋ถ€์—ฌํ•˜๋ฉฐ ์‚ฌ์šฉ์ž๋Š” ํ•ด๋‹น ์—ญํ• ์—์„œ ๊ถŒํ•œ์„ ๋ถ€์—ฌ๋ฐ›์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€์—์„œ๋Š” Cloud Billing API์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” IAM ์—ญํ• ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด IAM์„ ์‚ฌ์šฉํ•˜์—ฌ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด์™€ ๊ฐ™์€ ์—ญํ• ์„ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. IAM๊ณผ ๊ทธ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์„ค๋ช…์€ IAM ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ํŠนํžˆ ํ”„๋กœ์ ํŠธ, ํด๋”, ์กฐ์ง์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ด€๋ฆฌ ๋ฐ ๋‹ค๋ฅธ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ด€๋ฆฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ฐ ์—ญํ• 

์‚ฌ์šฉ์ž๊ฐ€ Google Cloud ์ฝ˜์†”์—์„œ Cloud Billing ๊ณ„์ • ์„ธ๋ถ€์ •๋ณด๋ฅผ ๋ณด๊ฑฐ๋‚˜ Cloud Billing API ๋ฉ”์„œ๋“œ๊ฐ€ Cloud Billing ๊ณ„์ • ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ ค๋ฉด ์‚ฌ์šฉ์ž๋‚˜ ํ˜ธ์ถœ์ž์—๊ฒŒ ํ•„์š”ํ•œ ๊ถŒํ•œ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Cloud Billing Catalog API์— ํ•„์š”ํ•œ ๊ถŒํ•œ

Cloud Billing Catalog API(์„œ๋น„์Šค ๋ชฉ๋ก ๋ฐ SKU ๋ชฉ๋ก)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ๊ถŒํ•œ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด API์—์„œ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ๊ณต๊ฐœ ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค.

Cloud Billing Budget API์— ํ•„์š”ํ•œ ๊ถŒํ•œ

๋‹ค์Œ ํ‘œ์—์„œ๋Š” ๊ฐ Cloud Billing Budget API ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ถŒํ•œ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ถŒํ•œ์„ ์ž๋™์œผ๋กœ ๋ถ€์—ฌํ•˜๋Š” ํ‘œ์ค€ IAM ๊ฒฐ์ œ ์—ญํ• ๋„ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

API ๋ฉ”์„œ๋“œ ํ•„์š”ํ•œ ๊ถŒํ•œ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” IAM ์—ญํ• 
GetBudget ์˜ˆ์‚ฐ ์„ธ๋ถ€์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ํ˜ธ์ถœ์ž์—๊ฒŒ ์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ billing.budgets.get ๊ถŒํ•œ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ˜ธ์ถœ์ž๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๊ถŒํ•œ ๋Œ€์‹  ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ resourcemanager.projects.get, billing.resourcebudgets.read ๊ถŒํ•œ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž, ํ”„๋กœ์ ํŠธ ํŽธ์ง‘์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ทฐ์–ด

ListBudgets Cloud Billing ๊ณ„์ •์— ์ ์šฉ๋œ ์˜ˆ์‚ฐ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋ ค๋ฉด ํ˜ธ์ถœ์ž์—๊ฒŒ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ billing.budgets.list ๊ถŒํ•œ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ˜ธ์ถœ์ž๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๊ถŒํ•œ ๋Œ€์‹  ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ resourcemanager.projects.get, billing.resourcebudgets.read ๊ถŒํ•œ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž, ํ”„๋กœ์ ํŠธ ํŽธ์ง‘์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ทฐ์–ด

CreateBudget ์ƒˆ ์˜ˆ์‚ฐ์„ ์ƒ์„ฑํ•˜๋ ค๋ฉด ํ˜ธ์ถœ์ž์—๊ฒŒ ์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ billing.budgets.create ๊ถŒํ•œ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ˜ธ์ถœ์ž๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๊ถŒํ•œ ๋Œ€์‹  ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ resourcemanager.projects.get, billing.resourcebudgets.read, billing.resourcebudgets.write ๊ถŒํ•œ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ํŽธ์ง‘์ž

UpdateBudget ๊ธฐ์กด ์˜ˆ์‚ฐ์„ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด ํ˜ธ์ถœ์ž์—๊ฒŒ ์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ billing.budgets.update ๊ถŒํ•œ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ˜ธ์ถœ์ž๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๊ถŒํ•œ ๋Œ€์‹  ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ resourcemanager.projects.get, billing.resourcebudgets.read, billing.resourcebudgets.write ๊ถŒํ•œ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ํŽธ์ง‘์ž

DeleteBudget ๊ธฐ์กด ์˜ˆ์‚ฐ์„ ์‚ญ์ œํ•˜๋ ค๋ฉด ํ˜ธ์ถœ์ž์—๊ฒŒ ์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ billing.budgets.delete ๊ถŒํ•œ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ˜ธ์ถœ์ž๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๊ถŒํ•œ ๋Œ€์‹  ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ resourcemanager.projects.get, billing.resourcebudgets.read, billing.resourcebudgets.write ๊ถŒํ•œ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์‚ฐ์˜ Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž

๋‹จ์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์˜ ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ํŽธ์ง‘์ž

Cloud Billing Account API์— ํ•„์š”ํ•œ ๊ถŒํ•œ

๋‹ค์Œ ํ‘œ์—๋Š” ๊ฐ Cloud Billing ๊ณ„์ • API ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ถŒํ•œ๊ณผ ์ด๋Ÿฌํ•œ ๊ถŒํ•œ์ด ํฌํ•จ๋œ Cloud Billing์˜ IAM ์—ญํ• ์ด ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค.

API ๋ฉ”์„œ๋“œ ํ•„์ˆ˜ ๊ถŒํ•œ ๊ถŒํ•œ์ด ํฌํ•จ๋œ IAM ์—ญํ• 
billingAccounts.create ๋ฉ”์„œ๋“œ๋Š” ์ƒˆ Cloud Billing ํ•˜์œ„ ๊ณ„์ •์„ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ˜ธ์ถœ์ž๋Š” ํ•˜์œ„ ๊ณ„์ •์˜ ์ƒ์œ„ Cloud Billing ๊ณ„์ •์— billing.accounts.update๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž
billingAccounts.get Cloud Billing ๊ณ„์ •์—์„œ billing.accounts.get ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ์‚ฌ์šฉ์ž
billingAccounts.list ์—†์Œ ์ด ๋ฉ”์„œ๋“œ๋Š” ํ˜ธ์ถœ์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ๊ณ„์ •์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. Cloud Billing ๊ณ„์ •์— ๋Œ€ํ•œ ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ์‚ฌ์šฉ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ ๊ฒฐ์ œ ๊ด€๋ฆฌ์ž
billingAccounts.getIamPolicy Cloud Billing ๊ณ„์ •์—์„œ billing.accounts.getIamPolicy ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ์‚ฌ์šฉ์ž
billingAccounts.setIamPolicy Cloud Billing ๊ณ„์ •์—์„œ billing.accounts.setIamPolicy ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž
billingAccounts.testIamPermissions ์—†์Œ ์ด ๋ฉ”์„œ๋“œ๋Š” ํ˜ธ์ถœ์ž๊ฐ€ ๋ณด์œ ํ•œ Cloud Billing ๊ณ„์ •์˜ ๊ถŒํ•œ์„ ํ™•์ธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์‚ฌํ•ญ ์—†์Œ
billingAccounts.patch Cloud Billing ๊ณ„์ •์—์„œ billing.accounts.update ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž
billingAccounts.projects.list Cloud Billing ๊ณ„์ •์—์„œ billing.resourceAssociations.list ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž, ๊ฒฐ์ œ ๊ณ„์ • ๋น„์šฉ ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ๋ทฐ์–ด
projects.getBillingInfo ํ”„๋กœ์ ํŠธ์˜ resourcemanager.projects.get
์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ”„๋กœ์ ํŠธ ์•ก์„ธ์Šค ์ œ์–ด๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž, ํ”„๋กœ์ ํŠธ ํŽธ์ง‘์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ทฐ์–ด
projects.updateBillingInfo Cloud Billing ๊ณ„์ •์˜ billing.resourceAssociations.create ๋ฐ ํ”„๋กœ์ ํŠธ์˜ resourcemanager.projects.createBillingAssignment ๊ฒฐ์ œ ๊ณ„์ • ๊ด€๋ฆฌ์ž ๋˜๋Š” ๊ฒฐ์ œ ๊ณ„์ • ์‚ฌ์šฉ์ž ๋ฐ ํ”„๋กœ์ ํŠธ ๊ฒฐ์ œ ๊ด€๋ฆฌ์ž

์—ญํ• 

์‚ฌ์šฉ์ž์—๊ฒŒ ๊ถŒํ•œ์„ ์ง์ ‘ ๋ถ€์—ฌํ•˜๋Š” ๋Œ€์‹  ํ•˜๋‚˜ ์ด์ƒ์˜ ๊ถŒํ•œ์ด ๋ฒˆ๋“ค๋กœ ํฌํ•จ๋œ ์—ญํ• ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

๋™์ผํ•œ ๋ฆฌ์†Œ์Šค์— ํ•˜๋‚˜ ์ด์ƒ์˜ ์—ญํ• ์„ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ํ‘œ์—๋Š” Cloud Billing API์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•ด ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๋Š” IAM ์—ญํ• , ๊ฐ ์—ญํ• ์— ๋Œ€ํ•œ ์„ค๋ช…, ๊ฐ ์—ญํ• ์— ํฌํ•จ๋œ ๊ถŒํ•œ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์—ญํ•  ์ค‘ ์ผ๋ถ€์—๋Š” ๋‹ค๋ฅธ Google Cloud ์„œ๋น„์Šค์— ๋Œ€ํ•œ ๊ถŒํ•œ๋„ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Role Permissions

(roles/billing.admin)

Provides access to see and manage all aspects of billing accounts.

Lowest-level resources where you can grant this role:

  • Billing Account

billing.accounts.close

billing.accounts.get

billing.accounts.getCarbonInformation

billing.accounts.getIamPolicy

billing.accounts.getPaymentInfo

billing.accounts.getPricing

billing.accounts.getSpendingInformation

billing.accounts.getUsageExportSpec

billing.accounts.list

billing.accounts.move

billing.accounts.redeemPromotion

billing.accounts.removeFromOrganization

billing.accounts.reopen

billing.accounts.setIamPolicy

billing.accounts.update

billing.accounts.updatePaymentInfo

billing.accounts.updateUsageExportSpec

billing.anomalies.*

  • billing.anomalies.get
  • billing.anomalies.list
  • billing.anomalies.submitFeedback

billing.anomaliesConfigs.*

  • billing.anomaliesConfigs.get
  • billing.anomaliesConfigs.update

billing.billingAccountPrice.get

billing.billingAccountPrices.list

billing.billingAccountServices.*

  • billing.billingAccountServices.get
  • billing.billingAccountServices.list

billing.billingAccountSkuGroupSkus.*

  • billing.billingAccountSkuGroupSkus.get
  • billing.billingAccountSkuGroupSkus.list

billing.billingAccountSkuGroups.*

  • billing.billingAccountSkuGroups.get
  • billing.billingAccountSkuGroups.list

billing.billingAccountSkus.*

  • billing.billingAccountSkus.get
  • billing.billingAccountSkus.list

billing.budgets.*

  • billing.budgets.create
  • billing.budgets.delete
  • billing.budgets.get
  • billing.budgets.list
  • billing.budgets.update

billing.credits.list

billing.finOpsBenchmarkInformation.get

billing.finOpsHealthInformation.get

billing.resourceAssociations.*

  • billing.resourceAssociations.create
  • billing.resourceAssociations.delete
  • billing.resourceAssociations.list

billing.subscriptions.*

  • billing.subscriptions.create
  • billing.subscriptions.get
  • billing.subscriptions.list
  • billing.subscriptions.update

cloudasset.assets.searchAllResources

cloudnotifications.activities.list

cloudsupport.properties.get

cloudsupport.techCases.*

  • cloudsupport.techCases.create
  • cloudsupport.techCases.escalate
  • cloudsupport.techCases.get
  • cloudsupport.techCases.list
  • cloudsupport.techCases.update

commerceoffercatalog.*

  • commerceoffercatalog.agreements.get
  • commerceoffercatalog.agreements.list
  • commerceoffercatalog.documents.get
  • commerceoffercatalog.documents.list
  • commerceoffercatalog.offers.get

compute.commitments.*

  • compute.commitments.create
  • compute.commitments.get
  • compute.commitments.list
  • compute.commitments.update
  • compute.commitments.updateReservations

consumerprocurement.accounts.*

  • consumerprocurement.accounts.create
  • consumerprocurement.accounts.delete
  • consumerprocurement.accounts.get
  • consumerprocurement.accounts.list

consumerprocurement.consents.check

consumerprocurement.consents.grant

consumerprocurement.consents.list

consumerprocurement.consents.revoke

consumerprocurement.events.*

  • consumerprocurement.events.get
  • consumerprocurement.events.list

consumerprocurement.licensePools.*

  • consumerprocurement.licensePools.assign
  • consumerprocurement.licensePools.enumerateLicensedUsers
  • consumerprocurement.licensePools.get
  • consumerprocurement.licensePools.unassign
  • consumerprocurement.licensePools.update

consumerprocurement.orderAttributions.*

  • consumerprocurement.orderAttributions.get
  • consumerprocurement.orderAttributions.list
  • consumerprocurement.orderAttributions.update

consumerprocurement.orders.*

  • consumerprocurement.orders.cancel
  • consumerprocurement.orders.get
  • consumerprocurement.orders.list
  • consumerprocurement.orders.modify
  • consumerprocurement.orders.place

dataprocessing.datasources.get

dataprocessing.datasources.list

dataprocessing.groupcontrols.get

dataprocessing.groupcontrols.list

logging.logEntries.list

logging.logServiceIndexes.list

logging.logServices.list

logging.logs.list

logging.privateLogEntries.list

recommender.cloudsqlIdleInstanceRecommendations.get

recommender.cloudsqlIdleInstanceRecommendations.list

recommender.cloudsqlOverprovisionedInstanceRecommendations.get

recommender.cloudsqlOverprovisionedInstanceRecommendations.list

recommender.commitmentUtilizationInsights.*

  • recommender.commitmentUtilizationInsights.get
  • recommender.commitmentUtilizationInsights.list
  • recommender.commitmentUtilizationInsights.update

recommender.computeAddressIdleResourceRecommendations.get

recommender.computeAddressIdleResourceRecommendations.list

recommender.computeDiskIdleResourceRecommendations.get

recommender.computeDiskIdleResourceRecommendations.list

recommender.computeImageIdleResourceRecommendations.get

recommender.computeImageIdleResourceRecommendations.list

recommender.computeInstanceGroupManagerMachineTypeRecommendations.get

recommender.computeInstanceGroupManagerMachineTypeRecommendations.list

recommender.computeInstanceIdleResourceRecommendations.get

recommender.computeInstanceIdleResourceRecommendations.list

recommender.computeInstanceMachineTypeRecommendations.get

recommender.computeInstanceMachineTypeRecommendations.list

recommender.costInsights.*

  • recommender.costInsights.get
  • recommender.costInsights.list
  • recommender.costInsights.update

recommender.costRecommendations.*

  • recommender.costRecommendations.listAll
  • recommender.costRecommendations.summarizeAll

recommender.resourcemanagerProjectUtilizationRecommendations.get

recommender.resourcemanagerProjectUtilizationRecommendations.list

recommender.spendBasedCommitmentInsights.*

  • recommender.spendBasedCommitmentInsights.get
  • recommender.spendBasedCommitmentInsights.list
  • recommender.spendBasedCommitmentInsights.update

recommender.spendBasedCommitmentRecommendations.*

  • recommender.spendBasedCommitmentRecommendations.get
  • recommender.spendBasedCommitmentRecommendations.list
  • recommender.spendBasedCommitmentRecommendations.update

recommender.spendBasedCommitmentRecommenderConfig.*

  • recommender.spendBasedCommitmentRecommenderConfig.get
  • recommender.spendBasedCommitmentRecommenderConfig.update

recommender.usageCommitmentRecommendations.*

  • recommender.usageCommitmentRecommendations.get
  • recommender.usageCommitmentRecommendations.list
  • recommender.usageCommitmentRecommendations.update

resourcemanager.projects.createBillingAssignment

resourcemanager.projects.deleteBillingAssignment

resourcemanager.projects.get

resourcemanager.projects.list

(roles/billing.carbonViewer)

billing.accounts.get

billing.accounts.getCarbonInformation

billing.accounts.list

(roles/billing.costsManager)

Manage budgets for a billing account, and view, analyze, and export cost information of a billing account.

Lowest-level resources where you can grant this role:

  • Billing Account

billing.accounts.get

billing.accounts.getIamPolicy

billing.accounts.getSpendingInformation

billing.accounts.getUsageExportSpec

billing.accounts.list

billing.accounts.updateUsageExportSpec

billing.anomalies.get

billing.anomalies.list

billing.anomaliesConfigs.*

  • billing.anomaliesConfigs.get
  • billing.anomaliesConfigs.update

billing.budgets.*

  • billing.budgets.create
  • billing.budgets.delete
  • billing.budgets.get
  • billing.budgets.list
  • billing.budgets.update

billing.resourceAssociations.list

recommender.costInsights.*

  • recommender.costInsights.get
  • recommender.costInsights.list
  • recommender.costInsights.update

(roles/billing.creator)

Provides access to create billing accounts.

Lowest-level resources where you can grant this role:

  • Organization

billing.accounts.create

resourcemanager.organizations.get

(roles/billing.projectCostsManager)

When granted in conjunction with cost view permissions on projects, provides access to billing information scoped to the projects to which the user has cost access.

Lowest-level resources where you can grant this role:

  • Billing Account

billing.accounts.getIamPolicy

billing.accounts.getSpendingInformationScoped

billing.costRecommendations.listScoped

(roles/billing.projectManager)

When granted in conjunction with the Billing Account User role, provides access to assign a project's billing account or disable its billing.

Lowest-level resources where you can grant this role:

  • Project

resourcemanager.projects.createBillingAssignment

resourcemanager.projects.deleteBillingAssignment

(roles/billing.user)

When granted in conjunction with the Project Owner role or Project Billing Manager role, provides access to associate projects with billing accounts.

Lowest-level resources where you can grant this role:

  • Billing Account

billing.accounts.get

billing.accounts.getIamPolicy

billing.accounts.list

billing.accounts.redeemPromotion

billing.credits.list

billing.resourceAssociations.create

(roles/billing.viewer)

View billing account cost and pricing information, transactions, and billing and commitment recommendations.

Lowest-level resources where you can grant this role:

  • Billing Account

billing.accounts.get

billing.accounts.getCarbonInformation

billing.accounts.getIamPolicy

billing.accounts.getPaymentInfo

billing.accounts.getPricing

billing.accounts.getSpendingInformation

billing.accounts.getUsageExportSpec

billing.accounts.list

billing.anomalies.get

billing.anomalies.list

billing.anomaliesConfigs.get

billing.billingAccountPrice.get

billing.billingAccountPrices.list

billing.billingAccountServices.*

  • billing.billingAccountServices.get
  • billing.billingAccountServices.list

billing.billingAccountSkuGroupSkus.*

  • billing.billingAccountSkuGroupSkus.get
  • billing.billingAccountSkuGroupSkus.list

billing.billingAccountSkuGroups.*

  • billing.billingAccountSkuGroups.get
  • billing.billingAccountSkuGroups.list

billing.billingAccountSkus.*

  • billing.billingAccountSkus.get
  • billing.billingAccountSkus.list

billing.budgets.get

billing.budgets.list

billing.credits.list

billing.finOpsBenchmarkInformation.get

billing.finOpsHealthInformation.get

billing.resourceAssociations.list

billing.subscriptions.get

billing.subscriptions.list

commerceoffercatalog.*

  • commerceoffercatalog.agreements.get
  • commerceoffercatalog.agreements.list
  • commerceoffercatalog.documents.get
  • commerceoffercatalog.documents.list
  • commerceoffercatalog.offers.get

consumerprocurement.accounts.get

consumerprocurement.accounts.list

consumerprocurement.consents.check

consumerprocurement.consents.list

consumerprocurement.orderAttributions.get

consumerprocurement.orderAttributions.list

consumerprocurement.orders.get

consumerprocurement.orders.list

dataprocessing.datasources.get

dataprocessing.datasources.list

dataprocessing.groupcontrols.get

dataprocessing.groupcontrols.list

recommender.commitmentUtilizationInsights.get

recommender.commitmentUtilizationInsights.list

recommender.costInsights.get

recommender.costInsights.list

recommender.costRecommendations.*

  • recommender.costRecommendations.listAll
  • recommender.costRecommendations.summarizeAll

recommender.spendBasedCommitmentInsights.get

recommender.spendBasedCommitmentInsights.list

recommender.spendBasedCommitmentRecommendations.get

recommender.spendBasedCommitmentRecommendations.list

recommender.spendBasedCommitmentRecommenderConfig.get

recommender.usageCommitmentRecommendations.get

recommender.usageCommitmentRecommendations.list

roles/billing.admin, roles/billing.costsManager, roles/billing.viewer, roles/billing.projectManager ์—ญํ• ์—๋Š” ๋‹ค๋ฅธ Google Cloud ์„œ๋น„์Šค์— ๋Œ€ํ•œ ๊ถŒํ•œ๋„ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.