Commit 44c86f3
Changed files (1)
app
controllers
app/controllers/metadata_controller.rb
@@ -6,22 +6,24 @@ class MetadataController < ApplicationController
private
def to_xml
- builder = Saml::Kit::IdentityProviderMetadata::Builder.new
- builder.sign = false
- builder.contact_email = 'hi@example.com'
- builder.organization_name = "Acme, Inc"
- builder.organization_url = root_url
- builder.add_single_sign_on_service(new_session_url, binding: :post)
- builder.add_single_sign_on_service(new_session_url, binding: :http_redirect)
- builder.add_single_logout_service(logout_url, binding: :post)
- builder.name_id_formats = [
- Saml::Kit::Namespaces::EMAIL_ADDRESS,
- Saml::Kit::Namespaces::PERSISTENT,
- Saml::Kit::Namespaces::TRANSIENT,
- ]
- builder.attributes << :id
- builder.attributes << :email
- builder.attributes << :created_at
- builder.build.to_xml
+ Rails.cache.fetch(metadata_url, expires_in: 1.hour) do
+ builder = Saml::Kit::IdentityProviderMetadata::Builder.new
+ builder.sign = false
+ builder.contact_email = 'hi@example.com'
+ builder.organization_name = "Acme, Inc"
+ builder.organization_url = root_url
+ builder.add_single_sign_on_service(new_session_url, binding: :post)
+ builder.add_single_sign_on_service(new_session_url, binding: :http_redirect)
+ builder.add_single_logout_service(logout_url, binding: :post)
+ builder.name_id_formats = [
+ Saml::Kit::Namespaces::EMAIL_ADDRESS,
+ Saml::Kit::Namespaces::PERSISTENT,
+ Saml::Kit::Namespaces::TRANSIENT,
+ ]
+ builder.attributes << :id
+ builder.attributes << :email
+ builder.attributes << :created_at
+ builder.build.to_xml
+ end
end
end