Sha256: 75caec29dcd6cf35ea0d8e15977cd6293c1b145847ed244b9bb9ee292c6a29ef

Contents?: true

Size: 570 Bytes

Versions: 30

Compression:

Stored size: 570 Bytes

Contents

# frozen_string_literal: true

namespace :auth do
  desc "Generates a Sign in with Apple Token"
  task :apple_token do
    ecdsa_key = OpenSSL::PKey::EC.new IO.read ".apple-key.p8"
    headers = {
      "kid" => Shimmer::Config.instance.apple_key_id!
    }
    claims = {
      "iss" => Shimmer::Config.instance.apple_team_id!,
      "iat" => Time.now.to_i,
      "exp" => 180.days.from_now.to_i,
      "aud" => "https://appleid.apple.com",
      "sub" => Shimmer::Config.instance.apple_bundle_id!
    }
    puts JWT.encode claims, ecdsa_key, "ES256", headers
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
shimmer-0.0.22 lib/shimmer/tasks/auth.rake
shimmer-0.0.21 lib/shimmer/tasks/auth.rake
shimmer-0.0.20 lib/shimmer/tasks/auth.rake
shimmer-0.0.19 lib/shimmer/tasks/auth.rake
shimmer-0.0.18 lib/shimmer/tasks/auth.rake
shimmer-0.0.17 lib/shimmer/tasks/auth.rake
shimmer-0.0.16 lib/shimmer/tasks/auth.rake
shimmer-0.0.15 lib/shimmer/tasks/auth.rake
shimmer-0.0.14 lib/shimmer/tasks/auth.rake
shimmer-0.0.13 lib/shimmer/tasks/auth.rake