์ด ํ์ด์ง์์๋ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ Google API์ ์ก์ธ์คํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ง์๋๋ ์ธ์ด๋ก Google Cloud API์ ์ฝ๊ฒ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์์ ์์ฒญ์ ์๋ฒ์ ๋ณด๋ด Google Cloud API๋ฅผ ์ง์ ์ฌ์ฉํ ์ ์์ง๋ง ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์์ฑํด์ผ ํ๋ ์ฝ๋ ์์ ํฌ๊ฒ ์ค์ฌ ์ฃผ๋ ๊ฐ์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด(ADC)๋ฅผ ์ง์ํ๊ธฐ ๋๋ฌธ์ ํนํ ๋ ๊ทธ๋ ์ต๋๋ค.
์ธ๋ถ ์์ค(์: ๊ณ ๊ฐ)์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ(JSON, ํ์ผ ๋๋ ์คํธ๋ฆผ)์ ํ์ฉํ๋ ๊ฒฝ์ฐ ์ธ๋ถ ์์ค ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ ์ฌ์ฉํ ๋์ ๋ณด์ ์๊ตฌ์ฌํญ์ ๊ฒํ ํ์ธ์.
ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ์ฌ์ฉ
์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ธ์ฆํ๋ ค๋ฉด ๋จผ์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์คํ๋๋ ํ๊ฒฝ์ ๋ํ ADC๋ฅผ ์ค์ ํด์ผ ํฉ๋๋ค. ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ํด๋ผ์ด์ธํธ๋ฅผ ๋ง๋๋ ๊ฒฝ์ฐ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฝ๋๊ฐ ์ฌ์ฉํ๋ API์ ์ธ์ฆํ๊ธฐ ์ํด ADC์ ์ ๊ณต๋ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์๋์ผ๋ก ํ์ธํ๊ณ ์ฌ์ฉํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ด ํ ํฐ์ ๋ช ์์ ์ผ๋ก ์ธ์ฆํ๊ฑฐ๋ ๊ด๋ฆฌํ ํ์๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ์๊ตฌ์ฌํญ์ ์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ํด ์๋์ผ๋ก ๊ด๋ฆฌ๋ฉ๋๋ค.
๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ฒฝ์ฐ gcloud CLI๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋๋ ์๋น์ค ๊ณ์ ๊ฐ์ฅ์ผ๋ก ADC๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. ํ๋ก๋์ ํ๊ฒฝ์ ๊ฒฝ์ฐ ์๋น์ค ๊ณ์ ์ ์ฐ๊ฒฐํ์ฌ ADC๋ฅผ ์ค์ ํฉ๋๋ค.
ํด๋ผ์ด์ธํธ ๋ง๋ค๊ธฐ ์์
๋ค์ ์ฝ๋ ์ํ์ Cloud Storage ์๋น์ค์ ํด๋ผ์ด์ธํธ๋ฅผ ๋ง๋ญ๋๋ค. ์ฝ๋์๋ ์ฌ๋ฌ ํด๋ผ์ด์ธํธ๊ฐ ํ์ํ ์ ์์ต๋๋ค. ์ด ์ํ์์๋ ํด๋ผ์ด์ธํธ๋ฅผ ๋ง๋ค๊ณ ๋ช ์์ ์ผ๋ก ์ธ์ฆํ๊ธฐ ์ํ ์ฝ๋ ์์ด ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํ ๊ฒ์ ๋๋ค.
๋ค์ ์ํ์ ์คํํ๋ ค๋ฉด ๋จผ์ ๋ค์ ๋จ๊ณ๋ฅผ ์๋ฃํด์ผ ํฉ๋๋ค.
- ํ๊ฒฝ์ ADC๋ฅผ ์ค์ ํฉ๋๋ค.
- Cloud Storage ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํฉ๋๋ค.
Go
์๋ฐ
Node.js
PHP
Python
Ruby
ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ API ํค ์ฌ์ฉ
API ํค๋ฅผ ํ์ฉํ๋ API์ ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์๋ง API ํค๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ํ API ํค์ API์ ์ฌ์ฉ๋์ง ๋ชปํ๋๋ก ํ๋ API ์ ํ์ฌํญ์ด ์์ด์ผ ํฉ๋๋ค.
์ต์คํ๋ ์ค ๋ชจ๋์์ ์์ฑ๋ API ํค์ ๊ดํ ์์ธํ ๋ด์ฉ์ Google Cloud ์ต์คํ๋ ์ค ๋ชจ๋ FAQ๋ฅผ ์ฐธ์กฐํ์ธ์.
์ด ์์์์๋ API ํค๋ฅผ ํ์ฉํ๋ Cloud Natural Language API๋ฅผ ์ฌ์ฉํ์ฌ API ํค๋ฅผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
C#
์ด ์ํ์ ์คํํ๋ ค๋ฉด Natural Language ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
C++
์ด ์ํ์ ์คํํ๋ ค๋ฉด Natural Language ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
Go
์ด ์ํ์ ์คํํ๋ ค๋ฉด Natural Language ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
Node.js
์ด ์ํ์ ์คํํ๋ ค๋ฉด Natural Language ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
Python
์ด ์ํ์ ์คํํ๋ ค๋ฉด Natural Language ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
์ ํ๋ฆฌ์ผ์ด์ ์์ API ํค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ ์ฅ ๋ฐ ์ ์ก ์ค์ ์์ ํ๊ฒ ๋ณดํธ๋๋๋ก ํด์ผ ํฉ๋๋ค. API ํค๋ฅผ ๊ณต๊ฐ์ ์ผ๋ก ๋ ธ์ถํ๋ฉด ๊ณ์ ์ ์์์น ์์ ๋น์ฉ์ด ๋ถ๊ณผ๋ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ API ํค ๊ด๋ฆฌ ๊ถ์ฅ์ฌํญ์ ์ฐธ์กฐํ์ธ์.
์ธ๋ถ ์์ค ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ ์ฌ์ฉํ ๋์ ๋ณด์ ์๊ตฌ์ฌํญ
์ผ๋ฐ์ ์ผ๋ก gcloud CLI ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ ์์ฑํฉ๋๋ค. ์๋ฅผ ๋ค์ด gcloud CLI๋ฅผ ์ฌ์ฉํ์ฌ ๋ก์ปฌ ADC ํ์ผ์ด๋ ๋ก๊ทธ์ธ ๊ตฌ์ฑ ํ์ผ์ ์์ฑํ ์ ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ์๋น์ค ๊ณ์ ํค๋ฅผ ๋ง๋ค๊ณ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ์ผ๋ถ ์ฌ์ฉ ์ฌ๋ก์์๋ ์ธ๋ถ ๋ฒ์ธ์ด ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฌํ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ Google API์ ์ธ์ฆํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์ผ๋ถ ์ ํ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์๋ ์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํ ํฐ์ ํ๋ํ๋ ๋ฐ ์ฌ์ฉํ๋ ์๋ํฌ์ธํธ์ ํ์ผ ๊ฒฝ๋ก๊ฐ ํฌํจ๋ฉ๋๋ค. ์ธ๋ถ ์์ค์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ ํ์ฉํ๋ ๊ฒฝ์ฐ ๊ตฌ์ฑ์ ์ฌ์ฉํ๊ธฐ ์ ์ ๊ตฌ์ฑ์ ๊ฒ์ฌํด์ผ ํฉ๋๋ค. ๊ตฌ์ฑ์ ๊ฒ์ฌํ์ง ์์ผ๋ฉด ์ ์์ ์ธ ํ์์๊ฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ์์คํ ๊ณผ ๋ฐ์ดํฐ์ ๋ณด์์ ์นจํดํ ์ ์์ต๋๋ค.
์ธ๋ถ ์์ค์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ ๊ฒ์ฌ
์ธ๋ถ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ๊ฒ์ฌํ๋ ๋ฐฉ๋ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ํ์ฉํ๋ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ์ ํ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค.
์๋น์ค ๊ณ์ ํค ๊ฒ์ฌ
์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋น์ค ๊ณ์ ํค๋ง ํ์ฉํ๋ ๊ฒฝ์ฐ ๋ค์ ์์ ๊ฐ์ด ์๋น์ค ๊ณ์ ํค ์ ์ฉ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ก๋๋ฅผ ์ฌ์ฉํ์ธ์. ์ ํ๋ณ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ก๋๋ ์๋น์ค ๊ณ์ ํค์ ์๋ ํ๋๋ง ํ์ฑํ์ฌ ์ทจ์ฝ์ ์ ๋ ธ์ถํ์ง ์์ต๋๋ค.
C#
var saCredential = ServiceAccountCredential.FromServiceAccountData(stream);
C++
auto cred = google::cloud::MakeServiceAccountCredentials(json)
์๋ฐ
ServiceAccountCredentials credentials =
ServiceAccountCredentials.fromStream(credentialsStream);
Node.js
const keys = JSON.parse(json_input)
const authClient = JWT.fromJSON(keys);
PHP
cred = new Google\Auth\Credentials\ServiceAccountCredentials($scope, $jsonKey);
Python
cred = service_account.Credentials.from_service_account_info(json_data)
Ruby
creds = Google::Auth::ServiceAccountCredentials.make_creds(json_key_io: json_stream)
์ ํ๋ณ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ก๋๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ type
ํ๋์ ๊ฐ์ด service_account
์ธ์ง ํ์ธํ์ฌ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ๊ฒ์ฌํฉ๋๋ค. type
ํ๋์ ๊ฐ์ด ๋ค๋ฅธ ๊ฐ์ธ ๊ฒฝ์ฐ ์๋น์ค ๊ณ์ ํค๋ฅผ ์ฌ์ฉํ์ง ๋ง์ธ์.
๊ธฐํ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ ๊ฒ์ฌ
์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋น์ค ๊ณ์ ํค ์ธ์ ๋ชจ๋ ์ ํ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ํ์ฉํ๋ ๊ฒฝ์ฐ ์ถ๊ฐ ๊ฒ์ฌ๋ฅผ ์ํํด์ผ ํฉ๋๋ค. ๋ค๋ฅธ ์ ํ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์ ์๋ก๋ ADC ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ํ์ผ, ์ํฌ๋ก๋ ์์ด๋ดํฐํฐ ์ ํด ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ํ์ผ ๋๋ ์ง์ ID ์ ํด ๋ก๊ทธ์ธ ๊ตฌ์ฑ ํ์ผ์ด ์์ต๋๋ค.
๋ค์ ํ์๋ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด์ ์๋ ๊ฒฝ์ฐ ๊ฒ์ฌํด์ผ ํ๋ ํ๋๊ฐ ๋์ ์์ต๋๋ค. ์ผ๋ถ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ตฌ์ฑ์๋ ์ด๋ฌํ ํ๋๊ฐ ๋ชจ๋ ํ์๋์ง ์์ต๋๋ค.
ํ๋ | ๋ชฉ์ | ์์ ๊ฐ |
---|---|---|
service_account_impersonation_url |
์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด ํ๋๋ฅผ ์ฌ์ฉํ์ฌ ์๋ํฌ์ธํธ์ ์ก์ธ์คํ์ฌ ๊ฐ์ฅ๋ ์๋น์ค ๊ณ์ ์ ์ก์ธ์ค ํ ํฐ์ ์์ฑํฉ๋๋ค. | https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/service account email:generateAccessToken |
token_url |
์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ธ๋ถ ํ ํฐ์ ์ด ์๋ํฌ์ธํธ๋ก ์ ์กํ์ฌ ์ ํด ์ก์ธ์ค ํ ํฐ์ผ๋ก ๊ตํํฉ๋๋ค. | https://sts.googleapis.com/v1/token |
credential_source.file |
์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด ํ๋์ ์ง์ ๋ ์์น์ ํ์ผ์์ ์ธ๋ถ ํ ํฐ์ ์ฝ๊ณ token_url ์๋ํฌ์ธํธ๋ก ์ ์กํฉ๋๋ค.
|
์ธ๋ถ ํ ํฐ์ด ํฌํจ๋ ํ์ผ์ ๊ฒฝ๋ก์ ๋๋ค. ์ด ๊ฒฝ๋ก๋ฅผ ์์์ผ ํฉ๋๋ค. |
credential_source.url |
์ธ๋ถ ํ ํฐ์ ๋ฐํํ๋ ์๋ํฌ์ธํธ์
๋๋ค. ์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด URL์ ์์ฒญ์ ๋ณด๋ด๊ณ ์๋ต์ token_url ์๋ํฌ์ธํธ๋ก ์ ์กํฉ๋๋ค.
|
๋ค์ ํญ๋ชฉ ์ค ํ๋์ ๋๋ค.
|
credential_source.executable.command |
GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES ํ๊ฒฝ ๋ณ์๊ฐ 1 ๋ก ์ค์ ๋๋ฉด ์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ด ๋ช
๋ น์ด ๋๋ ์คํ ํ์ผ์ ์คํํฉ๋๋ค.
|
์ธ๋ถ ํ ํฐ์ ๋ฐํํ๋ ์คํ ํ์ผ ๋๋ ๋ช ๋ น์ด์ ๋๋ค. ์ด ๋ช ๋ น์ด๋ฅผ ์์๋ณด๊ณ ์์ ํ์ง ๊ฒ์ฌํด์ผ ํฉ๋๋ค. |
credential_source.aws.url |
์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด URL์ ์์ฒญ์ ๋ณด๋ด AWS ๋ณด์ ํ ํฐ์ ๊ฐ์ ธ์ต๋๋ค. |
์ ํํ ๋ค์๊ณผ ๊ฐ์ ๊ฐ ์ค ํ๋์ ๋๋ค.
|
credential_source.aws.region_url |
์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด URL์ ์์ฒญ์ ๋ณด๋ด ํ์ฑ AWS ๋ฆฌ์ ์ ๊ฐ์ ธ์ต๋๋ค. |
์ ํํ ๋ค์๊ณผ ๊ฐ์ ๊ฐ ์ค ํ๋์ ๋๋ค.
|
credential_source.aws.imdsv2_session_token_url |
์ธ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด URL์ ์์ฒญ์ ๋ณด๋ด AWS ์ธ์ ํ ํฐ์ ๊ฐ์ ธ์ต๋๋ค. |
์ ํํ ๋ค์๊ณผ ๊ฐ์ ๊ฐ ์ค ํ๋์ ๋๋ค.
|
๋ค์ ๋จ๊ณ
- ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ์์ธํ ์์๋ณด๊ธฐ
- API ํค ์์ธํ ์์๋ณด๊ธฐ
- ์ธ์ฆ ๋ฐฉ๋ฒ์ ๊ฐ์ ํ์ธํ๊ธฐ