lib/generators/rodauth/oauth/templates/db/migrate/create_rodauth_oauth.rb in rodauth-oauth-0.10.4 vs lib/generators/rodauth/oauth/templates/db/migrate/create_rodauth_oauth.rb in rodauth-oauth-1.0.0.pre.beta1
- old
+ new
@@ -22,10 +22,23 @@
# t.string :jwks_uri, null: true
# t.string :jwks, null: true
# t.string :contacts, null: true
# t.string :software_id, null: true
# t.string :software_version, null: true
+ # oidc extra params
+ # t.string :sector_identifier_uri, null: true
+ # t.string :application_type, null: true
+ # t.string :subject_type, null: true
+ # t.string :id_token_signed_response_alg, null: true
+ # t.string :id_token_encrypted_response_alg, null: true
+ # t.string :id_token_encrypted_response_enc, null: true
+ # t.string :userinfo_signed_response_alg, null: true
+ # t.string :userinfo_encrypted_response_alg, null: true
+ # t.string :userinfo_encrypted_response_enc, null: true
+ # t.string :request_object_signing_alg, null: true
+ # t.string :request_object_encryption_alg, null: true
+ # t.string :request_object_encryption_enc, null: true
# JWT/OIDC per application signing verification
# t.text :jwt_public_key, null: true
# RP-initiated logout
# t.string :post_logout_redirect_uri, null: false
end
@@ -33,55 +46,31 @@
create_table :oauth_grants do |t|
t.integer :account_id
t.foreign_key :accounts, column: :account_id
t.integer :oauth_application_id
t.foreign_key :oauth_applications, column: :oauth_application_id
- t.string :code, null: false
+ t.string :type, null: true
+ t.string :code, null: true
t.index(%i[oauth_application_id code], unique: true)
+ t.string :token, unique: true
+ t.string :refresh_token, unique: true
t.datetime :expires_in, null: false
t.string :redirect_uri
t.datetime :revoked_at
t.string :scopes, null: false
t.datetime :created_at, null: false, default: -> { "CURRENT_TIMESTAMP" }
# for using access_types
t.string :access_type, null: false, default: "offline"
# uncomment to enable PKCE
# t.string :code_challenge
# t.string :code_challenge_method
- # uncomment to use OIDC nonce
- # t.string :nonce
# device code grant
# t.string :user_code, null: true, unique: true
# t.datetime :last_polled_at, null: true
# when using :oauth_resource_indicators feature
# t.string :resource
- end
-
- create_table :oauth_tokens do |t|
- t.integer :account_id
- t.foreign_key :accounts, column: :account_id
- t.integer :oauth_grant_id
- t.foreign_key :oauth_grants, column: :oauth_grant_id
- t.integer :oauth_token_id
- t.foreign_key :oauth_tokens, column: :oauth_token_id
- t.integer :oauth_application_id
- t.foreign_key :oauth_applications, column: :oauth_application_id
- t.string :token, null: false, token: true, unique: true
- # uncomment if setting oauth_tokens_token_hash_column
- # and delete the token column
- # t.string :token_hash, token: true, unique: true
- t.string :refresh_token, unique: true
- # uncomment if setting oauth_tokens_refresh_token_hash_column
- # and delete the refresh_token column
- # t.string :refresh_token_hash, token: true, unique: true
- t.datetime :expires_in, null: false
- t.datetime :revoked_at
- t.string :scopes, null: false
- t.datetime :created_at, null: false, default: -> { "CURRENT_TIMESTAMP" }
# uncomment to use OIDC nonce
# t.string :nonce
- # t.datetime :auth_time
- # when using :oauth_resource_indicators feature
- # t.string :resource
+ # t.string :acr
end
end
end
\ No newline at end of file