bcquality/microsoft/knowledge/security/secrettext-with-httpclient.good.al
Jesper Schulz-Wedde aca3986fd0
Correct security and privacy knowledge guidance (#92)
* Correct security and privacy guidance

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 9c2eebc4-dcd5-4b85-8113-90772d818900

* Address security privacy review findings

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 9c2eebc4-dcd5-4b85-8113-90772d818900

---------

Co-authored-by: Jesper Schulz-Wedde <jesper.schulzwedde@microsoft.com>
2026-07-14 11:25:03 +02:00

34 lines
1.2 KiB
AL

codeunit 50209 "Sec Sample SecretHttp Good"
{
procedure CallApiWithSecretUri(ApiKey: SecretText)
var
HttpClient: HttpClient;
Request: HttpRequestMessage;
Response: HttpResponseMessage;
SecretUri: SecretText;
begin
SecretUri := SecretStrSubstNo('https://api.example.com/data?key=%1', ApiKey);
Request.Method := 'GET';
Request.SetSecretRequestUri(SecretUri);
HttpClient.Send(Request, Response);
end;
procedure CallApiWithAccessToken(AccessToken: SecretText)
var
HttpClient: HttpClient;
Request: HttpRequestMessage;
Response: HttpResponseMessage;
Headers: HttpHeaders;
AuthHeader: SecretText;
AuthorizationHeaderMissingErr: Label 'Authorization header missing.';
begin
Request.Method := 'GET';
Request.SetRequestUri('https://api.example.com/data');
Request.GetHeaders(Headers);
AuthHeader := SecretStrSubstNo('Token %1', AccessToken);
Headers.Add('Authorization', AuthHeader);
if not Headers.ContainsSecret('Authorization') then
Error(AuthorizationHeaderMissingErr);
HttpClient.Send(Request, Response);
end;
}