supabase - 애플 로그인을 위한 secret key 생성 루비 스크립트

2026. 5. 12. 11:01GAME/개발

아래 코드에서 본인의 정보(Team ID, Service ID, Key ID, Key 내용)를 수정하신 후, 터미널창에 통째로 복사해서 붙여넣고 엔터를 누르면 긴 텍스트가 나오는데 이걸 supabase 에서 secret key 에 넣으면 된다.

=====

require 'jwt'
require 'openssl'

# --- 여기에 본인 정보를 입력하세요 ---
team_id = 'YOUR_TEAM_ID'
client_id = 'cohttp://m.appswayd.TodoWeatherGlobal.sid'
key_id = 'YOUR_KEY_ID'
private_key_content = <<~STR
-----BEGIN PRIVATE KEY-----
여기에 .p8 파일 내용을
그대로 붙여넣으세요
-----END PRIVATE KEY-----
STR
# ----------------------------------

ecdsa_key = OpenSSL::PKey::EC.new(private_key_content)
headers = { 'kid' => key_id }
claims = {
  'iss' => team_id,
  'iat' => Time.now.to_i,
  'exp' => Time.now.to_i + 15777000,
  'aud' => 'https://appleid.apple.com',
  'sub' => client_id
}

token = JWT.encode(claims, ecdsa_key, 'ES256', headers)
puts "\n--- 아래가 생성된 JWT 토큰입니다 ---\n\n"
puts token

==