fix: Identity JSON response header (#6326)
This commit is contained in:
@@ -1,5 +1,17 @@
|
||||
class MicrosoftController < ApplicationController
|
||||
after_action :set_version_header
|
||||
|
||||
def identity_association
|
||||
render layout: false
|
||||
microsoft_indentity
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def set_version_header
|
||||
response.headers['Content-Length'] = { associatedApplications: [{ applicationId: @identity_json }] }.to_json.length
|
||||
end
|
||||
|
||||
def microsoft_indentity
|
||||
@identity_json = ENV.fetch('AZURE_APP_ID', nil)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
{
|
||||
"associatedApplications": [
|
||||
{
|
||||
"applicationId": "<%= ENV['AZURE_APP_ID'] %>"
|
||||
}
|
||||
]
|
||||
}
|
||||
5
app/views/microsoft/identity_association.json.jbuilder
Normal file
5
app/views/microsoft/identity_association.json.jbuilder
Normal file
@@ -0,0 +1,5 @@
|
||||
json.associatedApplications do
|
||||
json.array! [@identity_json] do |identity_id|
|
||||
json.applicationId identity_id
|
||||
end
|
||||
end
|
||||
@@ -6,7 +6,11 @@ describe '/.well-known/microsoft-identity-association.json', type: :request do
|
||||
with_modified_env AZURE_APP_ID: 'azure-application-client-id' do
|
||||
get '/.well-known/microsoft-identity-association.json'
|
||||
expect(response).to have_http_status(:success)
|
||||
expect(response.body).to include '"applicationId": "azure-application-client-id"'
|
||||
expect(response.body).to include '"applicationId":"azure-application-client-id"'
|
||||
|
||||
content_length = { associatedApplications: [{ applicationId: 'azure-application-client-id' }] }.to_json.length
|
||||
|
||||
expect(response.headers['Content-Length']).to eq(content_length.to_s)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user