บทความนี้อธิบายวิธีนำ API Signing Public Key
ที่ได้จากคำสั่ง oci setup config ไป Upload เข้าสู่
Oracle Cloud Infrastructure หรือ OCI ผ่านหน้า
Web Console
ขั้นตอนนี้จำเป็นสำหรับการใช้งาน OCI CLI จากเครื่อง client
เช่น Windows, macOS หรือ Linux เพื่อให้ CLI สามารถ authenticate กับ OCI ได้
API Signing Key คืออะไร
API Signing Key คือ key pair ที่ใช้สำหรับยืนยันตัวตนระหว่าง เครื่อง client กับ OCI API โดยแบ่งออกเป็น 2 ส่วน:
- Private Key เก็บไว้ที่เครื่อง client ห้ามส่งให้ผู้อื่น
- Public Key ต้องนำไป upload เข้าหน้า OCI Console ของผู้ใช้
เมื่อใช้ oci setup config ระบบจะช่วยสร้าง key pair และไฟล์ config
สำหรับใช้งานกับ OCI CLI
สิ่งที่ต้องเตรียมก่อนเริ่ม
- บัญชีผู้ใช้ OCI ที่สามารถ login เข้า OCI Console ได้
- ติดตั้ง
OCI CLIบนเครื่อง client แล้ว - รันคำสั่ง
oci setup configแล้ว - มีไฟล์ Public Key ที่สร้างจาก OCI CLI
1. ตรวจสอบไฟล์ Public Key ที่ได้จาก oci setup config
หลังจากรันคำสั่ง:
oci setup config
โดยทั่วไป OCI CLI จะสร้างไฟล์ key ไว้ที่โฟลเดอร์ .oci
ภายใต้ user profile ของเครื่อง client
บน Windows path มักจะเป็น:
C:\Users\<your-user>\.oci\oci_api_key_public.pem
และ private key จะอยู่ที่:
C:\Users\<your-user>\.oci\oci_api_key.pem
ไฟล์ที่ต้อง upload เข้า OCI Console คือไฟล์:
oci_api_key_public.pem
oci_api_key.pem เพราะเป็น private key
ให้ upload เฉพาะไฟล์ oci_api_key_public.pem เท่านั้น
2. เปิดไฟล์ Public Key เพื่อตรวจสอบ
สามารถเปิดไฟล์ public key ด้วย Notepad หรือใช้ PowerShell:
Get-Content "$HOME\.oci\oci_api_key_public.pem"
ตัวอย่างเนื้อหา public key จะมีลักษณะประมาณนี้:
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQE...
-----END PUBLIC KEY-----
ให้ตรวจสอบว่าไฟล์ขึ้นต้นด้วย -----BEGIN PUBLIC KEY-----
และลงท้ายด้วย -----END PUBLIC KEY-----
3. Login เข้า OCI Console
เปิด browser แล้ว login เข้า OCI Console ด้วยบัญชีผู้ใช้ที่ต้องการใช้งานกับ OCI CLI
เมื่อ login สำเร็จ ให้คลิกที่ไอคอน Profile หรือรูปผู้ใช้บริเวณมุมขวาบนของหน้าจอ
4. เข้าเมนู User Settings
จากเมนู Profile ให้เลือก:
My Profile
หรือในบางหน้าจออาจแสดงเป็น:
User Settings
หน้านี้เป็นหน้าสำหรับจัดการข้อมูลของผู้ใช้ เช่น API Keys, Auth Tokens, Customer Secret Keys และ credential อื่น ๆ
5. เปิดเมนู API Keys
ในหน้า User Settings ให้ดูเมนูด้านซ้าย แล้วเลือก:
API Keys
หน้านี้จะแสดงรายการ API Signing Keys ที่ผูกกับผู้ใช้ปัจจุบัน
6. เพิ่ม API Key ใหม่
คลิกปุ่ม:
Add API Key
จากนั้นเลือกวิธีเพิ่ม key เป็น:
Upload Public Key File
แล้วเลือกไฟล์ public key จากเครื่อง client:
C:\Users\<your-user>\.oci\oci_api_key_public.pem
เมื่อเลือกไฟล์แล้ว ให้กด:
Add
หรือ Save ตามที่หน้า Console แสดง
7. ตรวจสอบ Fingerprint หลัง Upload
หลังจาก upload สำเร็จ OCI Console จะแสดงค่า Fingerprint ของ API Key ที่เพิ่มเข้ามา
ตัวอย่าง Fingerprint:
12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef
ให้นำค่า Fingerprint นี้ไปตรวจสอบกับไฟล์ config ของ OCI CLI
บน Windows ไฟล์ config มักจะอยู่ที่:
C:\Users\<your-user>\.oci\config
ตัวอย่าง config:
[DEFAULT]
user=ocid1.user.oc1..aaaa...
fingerprint=12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef
tenancy=ocid1.tenancy.oc1..aaaa...
region=ap-singapore-1
key_file=C:\Users\<your-user>\.oci\oci_api_key.pem
ค่า fingerprint ในไฟล์ config ต้องตรงกับ Fingerprint
ที่แสดงในหน้า OCI Console
8. ทดสอบ OCI CLI หลัง Upload Public Key
เปิด PowerShell แล้วรันคำสั่งทดสอบ:
oci iam region list
หาก config และ key ถูกต้อง จะเห็นรายการ region ของ OCI
หรือทดสอบดูข้อมูล user ปัจจุบัน:
oci iam user get --user-id <user_ocid>
หากใช้งานกับ OKE ต่อ สามารถทดสอบเรียก cluster ได้ เช่น:
oci ce cluster get `
--cluster-id <cluster_ocid> `
--region ap-singapore-1
9. ปัญหาที่พบบ่อย
ปัญหา: NotAuthenticated
ตัวอย่าง error:
ServiceError:
{
"code": "NotAuthenticated",
"message": "The required information to complete authentication was not provided or was incorrect."
}
สาเหตุที่เป็นไปได้:
- ยังไม่ได้ upload public key เข้า OCI Console
- Upload public key ผิด user
- ค่า fingerprint ในไฟล์ config ไม่ตรงกับ key ที่ upload
- ไฟล์ private key path ใน
key_fileไม่ถูกต้อง - Private key ไม่ตรงกับ public key ที่ upload
ปัญหา: Permission Denied หรือ Authorization failed
หาก authenticate ผ่านแล้ว แต่ไม่มีสิทธิ์เรียก resource บางอย่าง อาจเกิดจาก IAM Policy ยังไม่อนุญาต
ตัวอย่าง:
Authorization failed or requested resource not found.
กรณีนี้ต้องให้ผู้ดูแลระบบตรวจสอบ IAM Policy ของ user หรือ group ที่ user อยู่
ปัญหา: ใช้ key ผิดไฟล์
ไฟล์ public key และ private key มีชื่อคล้ายกัน ควรตรวจสอบให้แน่ใจว่า:
- ไฟล์ที่ upload คือ
oci_api_key_public.pem - ไฟล์ที่ระบุใน
key_fileคือoci_api_key.pem
คำสั่งสรุปสำหรับตรวจสอบบน Windows
ดู public key:
Get-Content "$HOME\.oci\oci_api_key_public.pem"
ดู OCI CLI config:
Get-Content "$HOME\.oci\config"
ทดสอบ OCI CLI:
oci iam region list
ทดสอบเรียก OKE cluster:
oci ce cluster get `
--cluster-id <cluster_ocid> `
--region ap-singapore-1
สรุป
การ upload API Signing Public Key เข้า OCI Console
เป็นขั้นตอนสำคัญหลังจากรัน oci setup config
เพื่อให้ OCI CLI สามารถ authenticate กับ OCI API ได้
ผู้ใช้งานต้อง upload เฉพาะไฟล์ oci_api_key_public.pem
เข้าไปที่เมนู My Profile → API Keys → Add API Key
และตรวจสอบให้แน่ใจว่า Fingerprint ใน OCI Console ตรงกับค่า
fingerprint ในไฟล์ ~/.oci/config
หลังจากตั้งค่าถูกต้องแล้ว สามารถใช้ OCI CLI เพื่อจัดการ resource
บน OCI เช่น OKE Cluster, Compute, Networking และบริการอื่น ๆ ได้จากเครื่อง client
















