@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix mcr: <https://registry.apicrafter.io/vocab#> .
@prefix dt: <https://registry.apicrafter.io/datatype/> .
@prefix cat: <https://registry.apicrafter.io/category/> .
@prefix country: <https://registry.apicrafter.io/country/> .
@prefix tool: <https://registry.apicrafter.io/tool/> .

dt:azure_ai_services_key a skos:Concept ;
    skos:inScheme <https://registry.apicrafter.io/> ;
    skos:notation "azure_ai_services_key" ;
    skos:prefLabel "Azure AI services key (Azure OpenAI, Cognitive Services)"@en ;
    skos:definition "Key of an Azure AI services resource, including Azure OpenAI and the former Cognitive Services, sent in the api-key or Ocp-Apim-Subscription-Key header. Keys in the current format have 84 letters and digits with the marker JQQJ99 after the first 52 characters and a service signature ending in COG (AAAAACOG for AI services, AAABACOG for Azure OpenAI, AAAEACOG for Cognitive Services). Older keys are 32 hexadecimal digits, which look like an MD5 hash, and are not covered. The regexp follows the pattern of the Microsoft security-utilities library; Microsoft Purview describes the same key."@en ;
    skos:broader dt:api_key ;
    mcr:status "draft" ;
    mcr:isPII false ;
    mcr:classification "identifier" ;
    mcr:regexp "^[A-Za-z0-9]{52}JQQJ99[A-Za-z0-9][A-L][A-Za-z0-9]{12}(?:AAAAACOG|AAABACOG|AAAEACOG)[A-Za-z0-9]{4}$" ;
    rdfs:seeAlso <https://learn.microsoft.com/en-us/purview/sit-defn-azure-cognitive-service-key> ;
    rdfs:seeAlso <https://github.com/microsoft/security-utilities/blob/main/GeneratedRegexPatterns/PreciselyClassifiedSecurityKeys.json> .
