Lietotāja informācijas nodrošinātāja API
Lietotāja informācijas nodrošinātāja API priekš pakalpojuma sniedzēja lietojumprogrammas nodrošina iespēju iegūt informāciju par autentificētu galalietotāju.
Galalietotāja datu tvērumi (scopes)
Galalietotāja datu tvērums definē galalietotāja datu atribūtus. Katru datu atribūtu var izmantot vienā vai vairākos galalietotāju datu tvērumos.
Iespējamie datu parametri:
| Atribūts | Apraksts |
|---|---|
serial_number | Personas koda formāts PNOLV-XXXXXX-XXXXX |
name | Vārds un uzvārds |
given_name | Vārds |
family_name | Uzvārds |
Eips | Elektroniskās identitātes pārbaudes pakalpojumu sniegšanas dati |
Lietotāja informācijas nodrošinātājs nodrošina šādus galalietotāju datu tvērumus, kas jāizmanto API autorizācijas koda pieprasījumam.
| Atribūts | Apraksts |
|---|---|
| urn:lvrtc:fpeil:aa | Pamatdatos ir šādi atribūti:Base data contains the following attributes:
|
| urn:safelayer:eidas:sign:identity:profile | Informācijas iegūšana par galalietotāja elektroniskā paraksta identitātēm.Obtaining of the information on the end-user's electronic signing identities. Šis tvērums ļauj iegūt sign_identities prasību. |
Iegūstiet informāciju par autentificēto lietotāju
Apraksts
Nodrošina identitātes informāciju un galalietotāja autentifikācijas procesu, kas saistīts ar OAuth 2.0 autorizācijas koda piešķiršanas pilnvarojumu. Pakalpojumu sniedzēja lietojumprogramma parasti izsauc šo darbību, ja galalietotāja autentifikācijai tiek izmantots OAuth 2.0. Parasti tas nav jāizsauc, ja OAuth 2.0 tiek izmantots tikai autorizācijai.
Pieprasījums
Pakalpojuma sniedzēja lietojumprogramma, izmantojot TLS, nosūta šādu GET pieprasījumu:
GET /trustedx-resources/openid/v1/users/meAutorizācija
Pieprasījumā jāiekļauj autorizācijas galvene ar OAuth piekļuves marķieri, kas iegūta, piešķirot autorizācijas kodu, tas ir, ar apstiprinājumu no galalietotāja, kura informācija tiek meklēta. Marķieri, kas iegūts, izmantojot pakalpojumu sniedzēja piekļuves datu piešķiršanas plūsmu, nevar izmantot, jo šāda veida marķieris nav saistīts ar konkrētu galalietotāju.
Piemērs
GET /trustedx-resources/openid/v1/users/me
Host: eidas.eparaksts.lv
Authorization: Bearer a2b4...6dafAtbilde
Atbilde ir JSON datu struktūra, kas satur autentificētā galalietotāja identitātes atribūtus un informāciju par kontekstu un autentifikācijas procesu (parasti identitātes sniedzēja apgalvojumus par autentificēto subjektu). Atgrieztie apgalvojumi parasti ir atkarīgi no tvēruma, kas saistīts ar pakalpojuma izsaukšanai izmantoto autorizāciju.
Statusa rinda
HTTP/1.1 200 OKContent-type galvene
Content-Type: application/json;charset=UTF-8Pamatteksts (body)
SON objekts ar apgalvojumiem
{
"sub" : {string},
"domain" : {string},
"acr" : {string},
"amr" : {array},
...
}Atbildē vienmēr tiek iekļauti šādas apgalvojumi:
| Parametrs | Apraksts |
|---|---|
sub | Galalietotāja identifikators (ID atribūta vērtība, kas iegūta, izmantojot autentifikācijas plūsmu). |
domain | Tā domēna identifikators, kurā tika autentificēts galalietotājs. |
acr | Autentifikācijas plūsma vai līmenis, kurā tiek identificēts galalietotājs (tiek rādīts tikai tad, ja galalietotājs izvēlas pieteikšanās metodi).
Vienmēr pārliecinieties, vai autentifikācijas plūsma vai līmenis atbilst kritērijiem. |
amr | Autentifikācijas metode, ar ko gala lietotājs autentificējās sesijas laikā. Ir derīgas šādas vērtības:
Šis parametrs ir JSON virkņu masīvs. |
Turklāt atbilde var ietvert citas pretenzijas atbilstoši galalietotāja piešķirtajiem tvērumiem:
| Parametrs | Apraksts |
|---|---|
\{attribute1} \{attribute2} ... | Galalietotāja identifikators (ID atribūta vērtība, kas iegūta, izmantojot autentifikācijas plūsmu). |
sign_identities | Informācija par galalietotāja elektroniskā paraksta identitātēm. |
Atbildes piemērs pieprasītajam tvērumam urn:lvrtc:fpeil:aa
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Date: Thu, 16 Nov 2017 10:14:21 GMT
{
"sub": "ddf12735f35675ecb652e6e1a80e41f1",
"domain": "citizen",
"acr": "urn:safelayer:tws:policies:authentication:level:high",
"amr":["urn:eparaksts:tws:policies:authentication:adaptive:methods:sc_plugin"],
"given_name": "ANDRIS",
"family_name": "PARAUDZIŅŠ",
"name": "ANDRIS PARAUDZIŅŠ",
"serial_number": "PNOLV-010180-15097",
"eips": "VAS \"Latvijas Valsts radio un televīzijas centrs\""
}Atbildes piemērs pieprasītajam tvērumam urn:safelayer:eidas:sign:identity:profile
{"sign_identities": [
{"id": "a46...hu6",
"status": {
"value": "enabled"
},
"labels": [
"serverid",
"x509:keyUsage:contentCommitment",
"eparaksts",
"serveridVersion1"
],
"domain": "citizen",
"links": {
"Signatures.create.server.raw": {
"auth": {
"oauth2": {
"scopes": [
"urn:safelayer:eidas:sign:identity:use:server"
]
}
}
}
},
"self": "https://eidas-demo.eparaksts.lv/trustedx-resources/esigp/v1/sign_identities/a46...hu6",
"access": [
{"user_id": "55f...16d"
}
],
"type": "pki:x509"
},
{"id": "oth...516",
"status": {
"value": "enabled"
},
"labels": [
"mobileidVersion1",
"eparaksts",
"mobileid",
"x509:keyUsage:digitalSignature"
],
"domain": "citizen",
"device_id": "ae34dd7.........104a2",
"self": "https://eidas-demo.eparaksts.lv/trustedx-resources/esigp/v1/sign_identities/oth...516",
"access": [
{
"user_id": "55f...16d"
}
],
"type": "pki:x509"
}
}
Lietotāja informācijas nodrošinātājs atgriež galalietotāja personiskos atribūtus un paraksta identitātes datu struktūrā sign_identities.Ir divu veidu parakstīšanas identitātes: viena elektroniskai parakstīšanai un otra autentifikācijai.
Autentifikācijas sertifikātsLai saņemtu autentifikācijas sertifikātu, ir jānolasa id vērtība, kur etiķešu masīvā ir mobile ID tags.
Autentifikācijas sertifikāts ir nepieciešams, ja paraksta pabeigšanai izmantojat Sign API pakalpojumu.
Parakstīšanas sertifikātsLai saņemtu parakstīšanas sertifikātu, jums ir jānolasa id vērtība, kur etiķešu masīvs satur serverid tagu.
Parakstīšanas sertifikāts ir nepieciešams, ja izmantojat Sign API pakalpojumu vai citu risinājumu datu parakstīšanai saskaņā ar XAdES vai PAdES specifikāciju.
Pārliecinieties vai statusa vērtība ir iespējota .
Sign_identitiesidentifikators laika gaitā var mainīties, piemēram, kad beidzas saistītā sertifikāta derīguma termiņš. Tāpēc, izstrādājot risinājumu, šo identifikatoru nevajadzētu glabāt Pakalpojumu sniedzēja lietojumprogrammas servera pusē.
Ja sign_identity ( id vērtība ar serverid tagu etiķešu masīvā) netiek atbildēts, tad galalietotājam ir tikai eParaksts mobile autentifikācijas līdzekļi un jāpabeidz servera parakstīšanas risinājuma ievade.
Šajā gadījumā ir jānosūta ziņojums galalietotājam, ka viņam ir jāpabeidz risinājuma parakstīšanas process.