16
INFRASTRUKTURA RAZVOJ APLIKACIJ IN SPLETNIH STRANI OFFICE TEČAJI SHAREPOINT ITIL SQL BI SHAREPOINT SharePoint Online – Migracija delovnih tokov na MS PowerAutomate str. 10 OKTOBER 2020 VZPOSTAVITEV PORTALA ZA SKUPNO RABO INFORMACIJ RAZVOJ Aritmetično kodiranje str. 20 RAZVOJ REŠITEV PO MERI www.kompas-xnet.si 20% POPUST NA PRIJAVE 13-14 APRIL 2021 Bohinjska Bistrica, Slovenia Ljubljana, 16. marec 2021 IZOBRAŽEVANJA MICROSOFT URADNI TEČAJI IT certifikati – del strateškega razvojnega načrta str. 30

VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

INFRASTRUKTURA RAZVOJ APLIKACIJ IN SPLETNIH STRANI OFFICE TEČAJI SHAREPOINT ITIL SQL BI

SHAREPOINT

SharePoint Online – Migracija delovnih tokov na MS PowerAutomate

str. 10

OKTOBER 2020

VZPOSTAVITEV PORTALA ZA SKUPNO RABO INFORMACIJ

RAZVOJ

Aritmetično kodiranjestr. 20

RAZVOJ REŠITEV PO MERI

www.kompas-xnet.si

20%POPUST NA

PRIJAVE

13-14 APRIL 2021Bohinjska Bistrica, Slovenia

Ljubljana,

16. marec 2021

IZOBRAŽEVANJA

MICROSOFT URADNI TEČAJI

IT certifikati – del strateškega razvojnega načrta

str. 30

Page 2: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

Spoštovani,

Veliko negotovosti je čutiti v zadnjem času in ta se iz dneva v dan le še stopnjuje. A pri nas naredimo vse, kar je v naši moči, da bi preprečili okužbo.

Zdravje naših obiskovalcev in zaposlenih je preveč dragoceno, da bi si ga drznili ogrožati.Zato naše učilnice in izpitni center redno temeljito razkužujemo, zračimo, udeleženci tečajev so razporejeni po učilnici z varno medosebno razdaljo.Spodbujamo pa predvsem »live virtual« udeležbo, ki pa žal še ni preveč priljubljena. A zagotavljamo vam, da je izkušnja »live virtual« tečaja prav tako zelo pozitivna, kot udeležba v učilnici. Vtisi “ live-virtual” udeležencev

"Odlično izvedeno 'oddaljeno' izobraževan-je. TEAMSi in Virtual Lab-i delovali tekoče. Predavatelj odlično podaja znanje s primeri iz prakse, s primeri in rešitvami iz živih okolij, s primeri, ki se nanašajo na specifična okolja nas slušateljev." - Boštjan Žagar, DBS tečaj 20345-1 live virtual (Miha Pihler), april 2020

Vljudno vas vabim, da si pogledate koledar tečajev, zagotovo boste našli nekaj aktualne-ga tudi zase in za svoje sodelavce: • Konec meseca je že potrjen Windows server 2019 tečaj, ki ga bo, prek Teams-ov, izvajal Luka Manojlovič• Vrsta tečajev za MS Azure, ki jih vodi Jože Markič: 2. novembra že potrjen AZ303: Mic-rosoft Azure Architect Technologies• Zbiramo prijave za • 20764: Administering a SQL Database Infrastructure z Dejanom Sarko, 2. – 6. november• PL900 Microsoft Power Platform Fun-

UVODNIK

damentals, 16. – 17. november - Robi Vončina• 55238 SharePoint Online for Administra-tors, 30. 11. – 2. 12. – Robi Vončina

Tu so še Excel, Teams, BI, Power Apps, O365, Exchange, DevOps, ITIL in druga izo-braževanja, z odličnimi predavatelji, ki bodo pomembno nadgradila vaše kompetence.

Srčno vas vabimo v našo virtualno učilnico in zagotavljam vam, da boste nadvse zadovol-jni. Naši predavatelji se bodo še posebej potrudili, da se boste naučili kar največ.

Verjamemo, da bo aprila precej lažje in se bomo lahko ponovno družili, zato vas vljud-no vabim, da si pogledate program Thrive konference in se čimprej prijavite. Zgodnje prijave so do konca leta, zagotovite si do 20 % popust. V času zgodnjih prijav lahko kupite določe-no število vstopnic, imena udeležencev pa sporočite kasneje. Ne odlašajte s prijavo na najboljši tehnično – izobraževalni dogodek s tradicijo in mednarodno udeležbo.

Ne zamudite priložnosti, da si povrnete in-vesticijo v znanje prek subvencije za izvedbo digitalne transformacije. Cilji javnega razpisa so: izvedba digitalne transformacije, izbol-jšanje kompetenc zaposlenih in povečanje dodane vrednosti. S subvencijo lahko krijete tudi posodobitev strojne in programske

11. KONFERENCAO MODERNIH IT TEHNOLOGIJAH

Zagotov ite si sv ojo v stopnico zdaj !

20%POPUST NA

PRIJAVE

13-14 APRIL 2021Bohinjska Bistrica, Slovenia

Page 3: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

SQL

RAZVOJ

14

18

SQL SERVER SECURITY PART 19: ROW-LEVEL SECURITY WITH PROGRAMMABLE OBJECTSDejan SarkaMVP, MCT

CHROME ORODJA ZA RAZVIJALCE - ELEMENTSDomen GričarMCSD, MCSA, MCT

SHAREPOINT ONLINE – MIGRACIJA DELOVNIH TOKOV NA MS POWERAUTOMATERobi VončinaMVP, MCT, MCITP, MCSA, MCTS

10

UVODNIK KAZALO

opreme, če boste podprli delovne procese znotraj sodobnega intranet portala, povečali kibernetsko varnost in podobno. Potrebujete novo spletno stran ali mobilno aplikacijo? Toplo se priporočamo za sodelovanje pri vseh tovrstnih projektih.

Povabite nas k sodelovanju na projektih, vezanih na Microsoft tehnologije, kot na primer: implementacije, nadgradnje in migracije elektronske pošte, SharePoint-a, vzpostavitev System Center orodij, migracija storitev v O365 ali Azure ipd.Na voljo imamo tudi vrsto dodatkov za SharePoint - Katalog SharePoint gradnikov >

Zdaj se že nekoliko ponavljam, a vam zares želim, da ostanete zdravi in da vas corona zaobide tako in drugače: bodite zdravi vi in vaši najbljižji, vaše delo pa naj poteka čim bolj nemoteno.

Naj bo Xnet vaša prva izbira, ko gre za IT rešitve in storitve. Microsoft tehnologije so naša strast.

Čuvajte se in ostanite zdravi!Branka Slinkar

ADMINISTRACIJA

MICROSOFT OFFICE

SHAREPOINT

8

22

DINAMIČNA OBMOČJA V EXCELUKlemen VončinaMicrosoft Office Specialist Master

KAKO AVTOMATIZIRATI "RAZPAKIRANJE" .ZIP DATOTEK V NOVE MAPE, KI JIM DAMO ENAKO IMEKlemen VončinaMicrosoft Office Specialist Master

24

21

MICROSOFT ENDPOINT MAN-AGERJože MarkičMCT, IT arhitekt, sistemski inženir,

POWERSHELL KOTIČEKAleš LipuščekMCP, MCTS, MCITP

28

30

DIGITALNA TRANSFORMACI-JA OSNOVANA NA NAJNOVE-JŠI RAZLIČICI ITIL V4Rok Sajovic, ITSM Center

IT CERTIFIKATI – DEL STRATEŠKEGA RAZVOJNEGA NAČRTAPetra MilitarevVodja izobraževanj

ISSN: 1408-7863Kompas Xnet d.o.o.Stegne 7 1000 Ljubljana

Telefon: 01 5136 990 Fax: 01 5136 999 Email: [email protected] Web: https://www.kompas-xnet.si

DirektoricaBranka Slinkar

Urednica in oblikovalkaUrška Premzl

Člani uredništvaAleš Lipušček, Aida Kalender Avdić, Gašper Rupnik, Miha Pihler, Jože Markič, Klemen Vončina, Robert Vončina, Anja Rupnik, Pe-tra Militarev, Dejan Sarka, Andraž Bergant, Manca Gruden

Nocoj je rekla »DA«… Čestitamo

Bod' moja, bod' moja, …

Malo bi spreminjale … -> lepo!

Prvi je »pod streho«! Bravo

Preseljen v učilnico

Največkrat prva

Rana ura, zlata ura

Od zdaj pa na svojem. Juhej!

Teče kot namazano

Remont je že zaključen :)

Uf, kako lep razgled!

Spodbuja, pomaga, navdihuje, …

18 knjig in 3 spletni tečaji. Kapo dol!

Azure je zakon

Punce mu dihajo za ovratnik

Še magisterij, potem pa

K O L O F O N

20 ARITMETIČNO KODIRANJEAndraž Bergant

DRUGO

Anja&GašperRobi

Urška,Aida,AnjaDomenKlemenUrškaMojca

AidaManca

Petra Miha

LukaDejanJožeAleš

Andraž

MemberA Proud Member of the LLPA,Microsoft’s Partner of the YearLearning

Page 4: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

6 7

IZOBRAŽEVANJE NA DALJAVOPočutili se boste kot v učilnici, vendar iz udobja doma/pisarne

POGLEJ VEČ POGLEJ VEČ

POGLEJ VEČ POGLEJ VEČ

AZ 303 MS 500

55238 20762

Microsoft Azure Architect

Technologies

Microsoft 365 Security

Administrator

SharePoint Online for

Administrators

Developing SQL

Databases

Kdaj: : 2. – 6. 11. 2020

Predava: Jože Markič, MCT

Kdaj: : 30. 11. – 3. 12. 2020

Predava: Miha Pihler, MCT

Kdaj: : 30. 11. – 2. 12. 2020

Predava: Robi Vončina, MCT

Kdaj: : 23. - 27. 11. 2020

Predava: Dejan Sarka, MCT

Za vse informacije so vam na voljo na [email protected] ali prek tel.: 01 01 5136 990

Tečaj mi je bil zelo všeč. Vse teme so bile predstavljene na razumljiv način, tako, da ni bilo težko slediti

in tudi ni bilo težko narediti laboratorijskih vaj. Pohvalil bi predavatelja, ker je novo snov podajal na

zelo poljuden način, tako, da smo slušatelji izvedeli še veliko več novega in pridobili na širšem znanju s

področja informatike.

g. Darko, DARS

""

TEČAJI ZA UPORABNIKESpoznajte, v živo ali na daljavo, osnovne ali napredne funkcionalnost

zbirk programov Microsoft Office, Microsoft Office 365.

POGLEJ VEČ

POGLEJ VEČ

POGLEJ VEČ

POGLEJ VEČ

POGLEJ VEČ

Microsoft Teams

Vrtilne tabele

Office 365 - za uporabnike

Microsoft Excel nadaljevalni

Uvod v Excel BI

Microsoft Access začetni

Kdaj: : 7. 12. 2020

Kdaj: : 30. 11. 2020

Kdaj: : 6. 11. 2020

Kdaj: : 30. 11. – 2. 12. 2020

Kdaj: : 16. 12. 2020

Kdaj: : 2. - 4. 11. 2020

Za vse informacije so vam na voljo na [email protected] ali prek tel.: 01 01 5136 990

Na tečaju in pri predavatelju mi je bilo najbolj všeč prilagodljivost našim željam in vprašanjem.

Spodbujanje vprašanj, jasna in potrpežljiva razlaga.

Ga. Nina, Kompetenca d.o.o."

"

Page 5: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

8 9

MICROSOFT OFFICE

Tistimed vami, ki imate to srečo, da v službiuporabljateOffice365,lahkožekarnekajčasaizkoriščateExcelovefunkcije,kiznajogeneriratidinamična območja. To pomeni, da se znafunkcija samodejno razširiti v toliko celic,kolikorjihrabi,daprikaževserezultate.S funkcijami, ki znajo delati dinamičnaobmočja,stesemordažesrečali,pa teganitinisteopazili.Navzvensenamrečprav izrazitonerazlikujejoodobičajnihSUM,IFinVLOOKUPfunkcij.

Manjprijetenznak,dasenekjenahajafunkcijadinamičnega območja, je napaka #SPILL. Topomeni, da se v tej celici nahaja funkcija, kise želi "razliti" (spill) v sosednje celice, a zato očitno nima dovolj prostora (v desno ali

Dinamična območja v ExceluTisti med vami, ki imate to srečo, da v službi uporabljate Office 365, lahko že kar nekaj časa izkoriščate Excelove funkcije, ki znajo generirati dinamična območja. To pomeni, da se zna funkcija samodejno razširiti v toliko celic, kolikor jih rabi, da prikaže vse rezultate.

Klemen VončinaMicrosoft Office Specialist [email protected]

navzdol jo pri razlivanjuovira vsebina neke drugecelice).

Znak funkcije, ki je bila pri generiranjudinamičnega območja uspešna, pa je zelo

tanka modra črtaokrog dinamičnegaobmočja, kosmo v območjupostavljeni.

Predstavil bom 3 funkcije za generiranjedinamičnih območij, ki semi osebno najboljdopadejo,obstajapa jih šenekaj več (mordatematikašekakšnegačlanka).

UNIQUEFunkcija UNIQUE je dobrodošel dodatek vExcelu, saj nam zna brez dodatnega kompli-ciranja z drugimi Excel funkcionalnostmiizpisati seznam vseh posameznih elementoviz označenega območja (tudi morebitipodvojene vrednosti nam zapiše po enkrat –zadnji argument funkcije bi bil FALSE) ali paseznam vseh vrednosti, ki se na označenemobmočjuleenkrat(duplikateignorira–zadnjiargument funkcije bi bil TRUE). Funkcijopreprostozapišemovenocelicoinsamasibovzela toliko prostora, kolikor ga bo rabila, daizpiševseelemente.

Primer, ko kot zadnji argument navedemoTRUE(vsevrednosti,kisenaobmočjupojavijoleenkrat):

MICROSOFT OFFICE

In ko kot zadnji argument navedemo FALSE(vsevrednostiizobmočjazapisanepoenkrat):

Če to funkcijo spremenimo tako, da v tretjem argumentu ("vrni_niz") namesto enega stolpcaizberemocelorazpredelnico,nambofunkcijaXLOOKUPgeneriraladinamičnoobmočje,vkateremnambovrnilavsekarnajdeonekemzapisu,torejvzgornjemprimeruvseinformacijeoosebizdoločenimpriimkom:

XLOOKUPTudi funkcijaXLOOKUP,ki jevExcelprišla kot nadgradnja funkcijeVLOOKUP, je pravzaprav funkcija, kizna generirati dinamična območja.Tisti, ki funkcijo XLOOKUP poznate,jo verjetno uporabljate za iskanjeposameznih dodatnih informacij,gledenanekpodatek,naprimer:iščimiime,gledenapodanipriimek:

Page 6: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

10 11

MICROSOFT OFFICE /SHAREPOINT

SharePoint Online – Migracija delovnih tokov na MS PowerAutomateMicrosoft se je končno odločil, kar je sicer napovedoval dalj časa, da ukine podporo klasičnim de-

lovnim tokovom in prisili uporabnike, da migrirajo svoje delovne tokove na MS Power Automate.

Večina uporabniških delovnih tokov, ki so se uporabljali tako na on-prem kot tudi v oblaku, je

nastavljala pravice na elementih, glede na določene parametre. Ker za migracijo starih, Share-

Point 2010, delovnih tokov orodja ni, sem se tudi sam srečal s kar precejšnjim izzivom, da smo pri

strankah pretvorili delovne tokove na PowerAutomate in zato sem se odločil tudi za prikaz, na

kakšen način lahko pretvorite lastne delovne tokove.

Robi VončinaMVP, MCT, MCITP, MCSA, MCTS

[email protected]

FILTERFunkcijaFILTERjelahkošenadgradnjafunkcijeXLOOKUP v obliki z dinamičnim območjem.XLOOKUP iz zgornjega primera ima namrečpomanjkljivost, da nam najde samo prvirezultat, ki ga najde (prvo osebo s priimkom"Voluhar").Kaj,čebiimelivečtakšnihosebinbiželelionjihugotovitidoločeneinformacije.PritemnampomagaFILTER.Tafunkcijazasvojedelovanjenujnopotrebuje2argumenta:• S katerega območja naj vrača podatke (vmojem primeru sem izbral prve 4 stolpce izbaze,kijevidnatudipriXLOOKUPprimeru).• Kaj je naš kriterij za filtriranje (na spodnjisliki lahko razberemo,da semdoločil, naj po

stolpcu E, kjer imamo shranjene vse priimke,iščevsebino,kijeenakaceliciR7,vkaterosemzapisal"NOVAK").Kot vidimo, nam je funkcija ob potrditviustvarila dinamično območje, v kateremnamvračavse relevantnepodatkezapriimek"Novak".

MSPowerAutomatePripraveNa seznamu, kjer bi si radi uredili funkcio-nalnost nastavljanja pravic, moramo najprejdefinirati, da bi radi, ob ustvarjanju novega

elementainspreminjanjuobstoječega,zagnalidelovnitok.Naj še povem, da ima seznam v mojemprimeru, samo en dodaten stolpec tipa»Personorgroup«,kiseimenuje»Approver«in

SHAREPOINT

napodlagikateregabomonastavilipravicenaelementu.Na desni strani se vam v stranski vrsticipokažejo predloge novih delovnih tokov. Čenenajdeteželenepredloge, lahkokliknetenadnu»Seeyour flows«,karvasnatopreusmerinastran»PowerAutomate«.Čeželimoustvaritinov prazen delovni tok, lahko na tej straniizberemo opcijo »New« in nato »Automat-ed-fromblank«.

V naslednjem koraku si moramo izbratiopcijo»Whenanitemiscreatedormodified-SharePoint«.Poklikunagumbcreate,senampojavidelovnapovršinazaustvarjanjenovegadelovnega toka. Na tem mestu moramonajprejnastaviti,nakateromesto innakateriseznam se povezujemo, se pravi nastavimo»Siteaddress«intudi»Listname«.

LogikaPrva akcija in tudi najbolj enostavna je, da vdelovni tok dodamo korak »Stop sharing anitem or a file«. V tej akciji nas zopet vprašapo URL-ju mesta, imenu seznama in dodatimoramo še ID elementa, na katerem bi radiustavilidedovanjepravic.

S to akcijo smo dosegli, da smo prekinilidedovanje pravic in odvzeli pravice vsemuporabnikom,kiniso»Ownerji«, sepravinisovskupini»SiteOwners«.

Sedajpamoramopravicedodatiuporabniku,ki je nastavljen kot approver, v stolpcu vseznamu. Za ta namen imamomed akcijamina voljo tudi »Grant access to an item ora folder«, ki od nas zahteva, da vpišemouporabniškeemailnaslove.Karmejezmotilovdoločenihprimerihjebilo,danimajovednovsi uporabniki mailboxa ali celo nimajovpisanega email naslova. Iz tega razloga, jepotrebno akcijo izpeljati na malo drugačennačin,insicerprekkoraka,kiseimenuje»SendHTTPrequesttoSharePoint«.VtemprimeruseuporabljaSharePointRESTAPI,kjerlahkoprekHTTP klica nastavimo pravice na elementu.Glavnatežava,kipaseobtempojavije,dataklicodnaszahteveprincipalIduserID,kipaga v našem primeru ne dobimo kot podatekna viru. Zaradi tegamoramo najprej nareditinov HTTP klic, ki nam bo priskrbel dotičenpodatek, prebrati JSON, ki ga dobimo kotodgovor innatodobljenipodatekuporabiti vnaslednjemHTTPklicu.

Page 7: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

12 13

SHAREPOINT

InitializevariableToakcijouporabljamo,da lahko izpodatkavpolju»Approver«,ustvarimoURIencodedzapisclaims identitete. Formula za konverzijo je vmojem primeru: encodeUriComponent(trig-gerOutputs()?['body/Approver/Claims']).

GetuserprincipalidS pomočjo tega zapisa, lahko v koraku »Getuser principal id« naredimo klic na RESTendpoint: _api/web/siteusers(@v)?@v='[En-codedClaimsIdentity]'.Odgovor,kigadobimos tem klicem, je v JSON obliki, zatomoramonujnoodgovorprebratizakcijo»ParseJSON«.

ParseJSONV tem korakumoramo definirati 2 spremenl-jivki, insicerbody(pride izprejšnjegakoraka)inpa»Schema«.JSONshemonajlažjedobimotako, da testno zaženemo delovni tok, zgumbom Test (skrajno desno zgoraj) in v

akciji»Getuserprincipalid«,skopiramokarsenahajav»body«polju:Toskopiramovpolje,kiseprikažeobklikunagumb »Generate from sample«. Ta operacijanaredi shemo JSON odgovora in zaradi teakcijeselahkovnaslednjemkorakusklicujemonaspecifičenpodatek.

Vzadnjemkorakuzopetdodamoakcijo»SendHTTP request to SharePoint«. V tej akciji pabomodejanskonastavilipravicezauporabnikena dotičnem elementu. Da bi se pravicenastavilepamoramonastavitinaslednje:

1.Siteaddress->mestokjersenahajaseznamzanastavitevpravic2.Method:POST3.URI->Moramodoločiti a.Imeseznama b.IDelementa

SHAREPOINT

c. Principalid -> dobimo iz »ParseJSON«akcije d.roleDefId->IDnivojapravic,kigaželimododeliti.SeznamvsehID-jevzaroleDefinitionsnajlažjedobimotako,dapokličemoRESTendpoint,insicernanačin:https://[tenant] .sharepoint .com/[zbirkamest]/_api/web/roledefinitions.V brskalniku nam URL vrne seznam vsehnivojevpravicinnjihoveID-je,vspodnjitabelipanekajnajboljpogostih:

Ime IDFullControl 1073741829Edit 1073741830Contribute 1073741827Read 1073741826

S tem smo naredili delovni tok, ki namomogoča, da ob ustvarjanju novega inspreminjanjeobstoječegaelementanastavimopravice uporabniku, ki je naveden v enemizmedpoljnaelementu.

V naslednji številki Pike, bom predstavil še,kakolahkouporabimoPowerAutomatetudizanastavljanjepraviczaSharePointskupine.

V primeru dodatnih vprašanj ali komentarjevtoplo vabljeni, da mi pišete na naslov: [email protected]činaSharePointMVP

Page 8: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

14 15

SQL Server Security Part 19: Row-Level Security with Pro-grammable Objects

Dejan SarkaMVP, MCT

[email protected]

Always encrypted is a very advanced technology; however, it has limitations. You have to do

a trade-off between functionality and security. With deterministic encryption, you get some

limited functionality of queries using the encrypted column, namely equality comparisons, for

the price of less secure encryption. With random encryption, the functionality of queries that

use the encrypted column is very low, no indexes, no seek, but you get a very strong encryption.

In addition, in order to encrypt existing unencrypted data, the data needs to be moved out and

then back in the database. Also, key rotation also involves data movement. The time needed for

that process might not be acceptable, and the process is also prone to network errors.

Introduction

In Transact-SQL, you can write views, stored

procedures, scalar and table-valued user-defined

functions, and triggers. Views serve best as a layer

for selecting data, although you can modify data

throughviewsaswell.Viewsareespeciallyusefulfor

columnsandRLS.Youcangrantcolumnpermissions

directly;however,doingthismeansa lotofadmin-

istrativework.Youcancreateaviewasaprojection

on thebase tablewith selected columnsonly, and

thenmaintain permissions on a higher granularity

level(thatis,ontheviewinsteadofonthecolumns).

In addition, you cannot give row-level permissions

through a predicate in the GRANT statement. Of

course,youcanusethesamepredicateintheWHERE

clauseoftheSELECTstatementoftheviewyouare

using as a security layer. You can use table-valued

functionsasparameterizedviews.

Stored procedures are appropriate for all update

activity, and also for querying data. Maintaining

SQL

security through stored procedures is the easiest

method of administration; with stored procedures,

youtypicallyneedtogranttheEXECUTEpermission

only. You can use triggers and scalar functions

for advanced security checking; for example, for

validatingusersinput.

Programmable objects refer to base tables and to

eachotherinakindofchain.Forexample,astored

procedure canuse a view that selects fromabase

table. All the objects in SQL Server have owners.

Aslongasthereisasingleownerforalltheobjects

in the chain, you canmanage permissions on the

highest level only. Using the previous example, if

thestoredprocedure,view,andbasetablehavethe

same owner, you canmanage permissions for the

stored procedure only. SQL Server trusts that the

ownerof theprocedureknowswhat theprocedure

isdoing.ThisworksforanyDMLstatement(SELECT,

INSERT,UPDATE,DELETE,andMERGE).

SQL

Ifthechainofownersbetweendependentobjectsis

broken,SQLServermustcheckthepermissionsfor

anyobjectswherethechainisbroken.Forexample,

if the owner of the procedure from the previous

exampleisdifferentfromtheowneroftheview,SQL

Serverwillcheckthepermissionsontheviewaswell.

Iftheownerofthetableisdifferentfromtheownerof

theview,SQLServerwillalsocheckpermissionson

thebasetable.Inaddition,ifyouusedynamicT-SQL

code,concatenateaT-SQLstatementasastring,and

thenuse theEXECUTEcommand toexecute them,

SQLServerchecksthepermissionsonalltheobjects

the dynamic code is using. This is logical because

SQLServercannotknowwhichobjectsthedynamic

code is going to use until it actually executes the

code, especially if you concatenate a part of the

dynamiccodefromuserinput.Besidesthethreatof

codeinjection,thisextracheckingisanotherreason

whyyoushouldnotusedynamicstringconcatena-

tioninT-SQLcodeinproduction.

Testing RLS with Programmable Objects

To start testing programmable-object-based RLS,

let's create a new demo database and change the

contexttothisdatabase:

USE master;

IF DB_ID(N'RLSDemo') IS NULL

CREATE DATABASE RLSDemo;

GO

USE RLSDemo;

Thenextstepistocreatefourdatabaseuserswithout

logins. Three of them represent regular users from

thesalesdepartment,andthefourthonerepresents

the sales department manager. We will use the

followingprogramtocreatethedatabases:

CREATE USER SalesUser1 WITHOUT LOGIN;

CREATE USER SalesUser2 WITHOUT LOGIN;

CREATE USER SalesUser3 WITHOUT LOGIN;

CREATE USER SalesManager WITHOUT LOGIN;

GO

The next piece of code creates a table for the

employeedata.ThistableneedsRLS:

CREATE TABLE dbo.Employees

(

EmployeeId INT NOT NULL PRIMARY KEY,

EmployeeName NVARCHAR(10) NOT NULL,

SalesRegion NVARCHAR(3) NOT NULL,

SalaryRank INT NOT NULL

);

GO

Nowlet's insertsomedata intothedbo.Employees

table. The three rows inserted represent the three

regular users from the sales department. You can

check the inserted rows immediatelywith aquery.

Note that the sales region for the first twousers is

USA,andforthethirdoneitisEU:

INSERT INTO dbo.Employees

(EmployeeId, EmployeeName, SalesRegion,

SalaryRank)

VALUES

(1, N'SalesUser1', N'USA', 5),

(2, N'SalesUser2', N'USA', 4),

(3, N'SalesUser3', N'EU', 6);

-- Check the data

SELECT *

FROM dbo.Employees;

GO

Thedbo.Customerstable,createdwiththefollowing

code,willalsoneedRLS:

CREATE TABLE dbo.Customers

(

CustomerId INT NOT NULL PRIMARY KEY,

Page 9: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

16 17

SQL

CustomerName NVARCHAR(10) NOT NULL,

SalesRegion NVARCHAR(3) NOT NULL

);

GO

Again, let's insert some rows into this table and

checkthem.TherearetwocustomersfromtheUSA

andtwofromtheEU:

INSERT INTO dbo.Customers

(CustomerId, CustomerName, SalesRegion)

VALUES

(1, N'Customer01', N'USA'),

(2, N'Customer02', N'USA'),

(3, N'Customer03', N'EU'),

(4, N'Customer04', N'EU');

-- Check the data

SELECT *

FROM dbo.Customers;

GO

Noneoftheusershavebeengivenanypermissions

yet.Therefore,youcanreadthedataonlyasthedbo

user. Ifyouexecutethe following five linesofcode,

onlythefirstSELECTsucceeds.ForthefourEXECUTE

commands,yougetanerror:

SELECT * FROM dbo.Employees;

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesUser1';

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesUser2';

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesUser3';

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesManager';

Inthenextstep,thecodecreatesastoredprocedure

thatreadsthedatafromthedbo.Employeestable.It

filterstherowsforregularusersandreturnsallrows

forthesalesdepartmentmanager:

CREATE PROCEDURE dbo.SelectEmployees

AS

SELECT *

FROM dbo.Employees

WHERE EmployeeName = USER_NAME()

OR USER_NAME() = N'SalesManager';

GO

You must give the permission to execute this

proceduretothedatabaseusers:

GRANT EXECUTE ON dbo.SelectEmployees

TO SalesUser1, SalesUser2, SalesUser3,

SalesManager;

GO

Users still cannot see the data by querying the

tablesdirectly.Youcantestthisfactbyexecutingthe

followingcodeagain.Youcan read thedataas the

dbouser,butwillgeterrorswhenyouimpersonate

otherdatabaseusers:

SELECT * FROM dbo.Employees;

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesUser1';

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesUser2';

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesUser3';

EXECUTE (N'SELECT * FROM dbo.Employees') AS

USER = N'SalesManager';

GO

Trytoexecutethestoredprocedure,onceasdboand

oncebyimpersonatingeachdatabaseuser:

EXEC dbo.SelectEmployees;

EXECUTE AS USER = N'SalesUser1' EXEC dbo.

SelectEmployees;

REVERT;

SQL

EXECUTE AS USER = N'SalesUser2' EXEC dbo.

SelectEmployees;

REVERT;

EXECUTE AS USER = N'SalesUser3' EXEC dbo.

SelectEmployees;

REVERT;

EXECUTE AS USER = N'SalesManager' EXEC dbo.

SelectEmployees;

REVERT;

GO

As the dbo user, you can execute the procedure;

however,youdon'tseeanyrowsbecausethefilterin

thequeryintheproceduredidnottakethedbouser

intoconsideration.Ofcourse,thedbousercanstill

query the tabledirectly.The regularuserssee their

rowsonly.Thesalesdepartmentmanagerseesallof

therowsinthetable.

The next procedure uses dynamic SQL to read

the data from the table for a single user. By using

dynamic SQL, the procedure creates a broken

ownershipchain.Thefollowingcodeillustratesthis

process:

CREATE PROCEDURE dbo.SelectEmployeesDy-

namic

AS

DECLARE @sqlStatement AS NVARCHAR(4000);

SET @sqlStatement = N'

SELECT *

FROM dbo.Employees

WHERE EmployeeName = USER_NAME();'

EXEC(@sqlStatement);

GO

The following code is used to give the users

permissiontoexecutethisprocedure:

GRANT EXECUTE ON dbo.SelectEmployeesDy-

namic

TO SalesUser1, SalesUser2, SalesUser3,

SalesManager;

GO

Now,trytoexecutetheprocedurebyimpersonating

differentusers,withthehelpofthefollowingcode:

EXEC dbo.SelectEmployeesDynamic;

EXECUTE AS USER = N'SalesUser1' EXEC dbo.

SelectEmployeesDynamic;

REVERT;

EXECUTE AS USER = N'SalesUser2' EXEC dbo.

SelectEmployeesDynamic;

REVERT;

EXECUTE AS USER = N'SalesUser3' EXEC dbo.

SelectEmployeesDynamic;

REVERT;

EXECUTE AS USER = N'SalesManager' EXEC dbo.

SelectEmployeesDynamic;

REVERT;

Whenyouexecutethisasthedbouser,theexecution

succeeds, but you don't get any data returned.

However, when you execute the procedure while

impersonatingotherusers,yougetanerrorbecause

other users don't have permission to read the

underlyingtable.

Conclusion

Using programmable objects for RLS protects sensitive

data very well because users don't have direct

access to the tables. However, the implementation

of such a security might be very complex for existing

applications that don't use stored procedures, and

other programmable objects. This is why SQL Server

2016 and later include predicate-based RLS, which I

will introduce in my next article.

Page 10: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

18 19

RAZVOJ

Chrome Orodja za razvijalce - Elements

Domen GričarMCSD, MCSA, MCT

[email protected]

Če želimo pregledati

določen element,

je najhitreje če v

brskalniku kliknemo

z desnim miškinim gumbom na izbrani

element in izberemo Preglej, lahko pa v že

odprtih orodjih kliknemo gumb Pregled za

izbiro elementa ali v DOM pregledovalniku

kliknemonaelement.Kojeelementizbran,se

lahkomedelementipremikamoz tipkovnico,

VprejšnjemčlankusemnakratkoopisalChromeorodjazarazvijalce,kakosejihodpre,

kateraorodjasonaizbiroinzakajsejihuporablja.Vtemčlankubomboljpodrobno

opisalzavihekElements,vkaterempregledujemoinurejamoDOMstrukturostraniter

pregledujemoinurejamooblikovanjeelementovzCSS.

s tipkama gor in dol se premikamo med

elementi,stipkamalevoindesnopaelemente

razširimo in zložimo ali pa se prestavimo na

element,kijenavišjem/nižjemnivoju.Česmo

iskalipoDOMstrukturiinelementanevidimo

nastrani, lahkokliknemoScroll intoview,kar

nampremakne strando izbranega elementa.

Če želimo poiskati specifičen element, lahko

uporabimo tudi iskanje (Ctrl + F), s katerim

lahko iščemopo značkah,oznakah (class, id)

invsebinielementov.

DOM strukturo lahko tudi spreminjamo in dodajamo

noveelemente.Zaurejanjevsebine,atributov(class,id)

inznačk(tags)zadostujedvokliknavsebino,kijoželimo

spremeniti.Podvoklikusedoločendelelementaoznači

in ga lahko uredimo. Za spremembo vrstnega reda

elementov,seelement,kigaželimoprestavitipovleče

na mesto kjer ga želimo imeti. Elemente lahko tudi

zbrišemo(desnimiškinklikinizborDeleteelement)ali

gaskrijemo(Hideelement–elementjeskritnastrani,

nevDOMstrukturi).Čeželimododajatiposebneznake

in urejati vsebino si izberemoEdit asHTML, kar nam

omogoča, da strukturo urejamo celoten element, ki

smosiga izbrali innjegovechildelemente,kotHTML

RAZVOJ

vsebino. Elementom pa lahko tudi določimo

stanje (Force state), kar simulira določeno

stanjeelementa,naprimerkosepremaknemo

zmiškočezelementalikogakliknemo.

Ko smo si izbrali element vidimo tudi CSS

stile,kitrenutnovplivajonaelement.Čejeza

isto lastnost določenih več vrednosti, bodo

tisti,kinisoapliciraniprečrtani.Elementustile

lahkozbrišemo, jihdodajamoali jihurejamo.

Lastnostiki jihzapišemovelement.style {} so

prikazani,kotdasozapisaniinline,velementu.

Česiizberemo:hovlahkodoločimoelementu

stanje, enako kot smo ga določili z klikom

na Force state. Ob kliku .cls lahko elementu

dodamo nove classe, ob kliku na znak +,

pa lahko določimo nova pravila, kjer lahko

določimonatančnejšoopredelitevelementov,

injihomejimozclass-i,id-jiinpsevdoelementi.

Pri izbira barv imamo na voljo dodatno

orodje, ki nam omogoča natančno izbiro

barve. Lahko izberemo med že določenimi

barvnimi paletami, izberemo svojo barvo ali

pa izberemodoločenobarvo iz strani.Orodje

prav tako omogoča pretvorbo barve med

vrednostmi HEX, rgba in hsla. Preverimo pa

lahkotudikontrast,kar jepriročno,koželimo

preveriti barve, da je stran bolj pregledna in

dostopna.

Pri slogih lahko izberemo tudi zavihek

Computed (če je konzola dovolj široka,

preračunane vednosti niso prikazane kot

zavihek, ampak vzporedno z CSS stili). V tem

zavihku na vrhu najprej vidimo HTMLmodel

škatle elementa (box model), kjer vidimo

velikost elementa, padding, obrobo in odmik

od drugi elementov. Pod modelom škatle

imamo prikazane preračunane vrednosti

(vrednosti, ki se upoštevajo). Ob kliku na

vrednost lahko preverimo v katerem CSS

praviludobimodoločenevrednosti.

Ko imamo elemente in njihove CSS oblike

urejene lahko še preverimo, kako bi izgledali

nadrugihnapravah.Dapreverimozavelikosti

drugihnaprav, kliknemogumbToggledevice

toolbar, kjer si lahko izberemo določeno

velikostzaslona,alipasiizberemomedžeprej

določenimi velikostmi, za specifične naprave.

Prav tako lahko simuliramo orientacijo

(pokončno, ležeče) in vrsto povezave

(povezano,mobilnapovezava,brezpovezave).

Orodja so zelo priročna, ko želimo preveriti

obnašanje strani, preveriti kako bi izgledalo

če bi dodali nov element in za hitro urejanje

slogov,zaradičesarjevelikohitrejeinzavsako

spremembo nam ni treba ponovno naložiti

celotne strani. Zapomniti si je le treba, da

se spremembe, ki smo jih naredili na DOM

strukturi, ob osvežitvi strani ne ohranijo, zato

jih moramo preden osvežimo stran prepisati

vvir.

Page 11: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

20 21

RAZVOJ

Aritmetično kodiranje

Andraž [email protected]

Obstaja neskončno mnogo sporočil oziroma zapisov prav tako kot je neskončno mnogo

števil v intervalu med [0,1]. Če bi vsakemu številu enolično priredili decimalno število

iz intervala [0,1] bi sporočilo zakodirali oziroma celo stisnili in ravno to je namen arit-

metičnega kodiranja. Več kot je istih znakov v sporočilu bolj lahko stisnemo datoteko.

Na lahkem primeru si poglejmo kako deluje

aritmetičnokodiranje:

Kot primer si bomo pogledali niz EXCEL,

ki je sestavljen iz petih znakov. Na začetku

naredimo tabelo verjetnosti za vsako črko

zravenpadoločimošeobmočjezaposamezen

znak, ki mora biti med 0 in 1. Vseeno je v

kakšnemzaporedjusisledijoznakivažnojele,

dadekodirnikinkodirnikuporabljataistivrstni

red. Tabelo smo razporedili po abecednem

vrstnemredu.

Znak Verjetnost Območje d

C 0.2 0.00<=d<0.20

E 0.4 0.20<=d<0.60

L 0.2 0.60<=d<0.80

X 0.2 0.80<=d<1.00

Zauspešnodekodiranjeprvegasimbolamora

biti končno število večje ali enako od 0.20 in

manjšeod0.60.

Zgornjo in spodnjo mejo novega intervala

števila,kikodiratrenutnesimboledoločimoz

enačbama:

mSpodnja=mSpodnja+(mZgornja-mSpodn-

ja)*mSpodnja(znak)

mZgornja=mSpodnja+(mZgornja-mSpodn-

ja)*mZgornja(znak)

Indobimotabelo:

Znak mSpodnja mZgornja

- 0.0 1.0

E 0.2 0.6

X 0.52 0.6

C 0.52 0.536

E 0.5232 0.5296

L 0.52704 0.52832

Naš niz EXCEL unikatno kodira katerakoli

vrednost x iz intervala [0.52704,0.52832].

Najpametneje jepoiskatinajmanjšixoziroma

spodnjo vrednost intervala 0.52704. To

vstavimovenačbo:

X Znak mSpodnja d

0.52704 E 0.2 0.4

0.8176 X 0.8 0.2

0.088 C 0 0.2

0.44 E 0.2 0.4

0.6 L 0.6 0.2

0 - - -

Tako smouspešnodekodirali našniz samo s

pomočjoverjetnostnetabeleinvrednostix.

ADMINISTRACIJA

PowerShell kotiček

Aleš LipuščekMCP, MCTS, [email protected]

Do prve napake pri izvajanju naših skriptnikdar ni prav daleč: ali določen računalnikni dosegljiv, ne najdemo določene datoteke,nimamo pravic dostopa do nje … Obstajajonačini, kako te napake polovimo in jihobdelamo, kot nam ustreza, na primerzabeležimo ime nedosegljivega računalnika,da bomo opravilo kasneje ponovili, mogočezapišemo opozorilo v EventLog, ko nimamodostopainpodobno.

PowerShell napake privzeti izpisuje z rdečimtekstomnačrnipodlagi(čenastavitevsevedanismo spreminjali). Izjema (Exception) paje posebne vrste dogodek , ki nastane kotproizvodnapake.

Le te so lahkousodne za izvajanje, ali pane.Priprvihseizvajanjenepreklicnokonča,drugepa, če so ustrezno pohendlane, omogočajonadaljevanjepotekaukaza/skripte.Pravzapravlahko njihovo obnašanje kontroliramo zuporabopreferenčne spremenljivke $ErrorAc-tionPreference. Prva možnost je opcijaInquire, ki jo uporabljamo večinoma samoza razhroščevanje, inpomenidanasboukazpovprašal kaj naj naredi. Druga (in privzeta)opcijajeContinue,kinarekujePowershellunajizpišenapakoinnadaljujeizvajanje.SilentlyContinueizklopi izpisnapake,Stoppaneusodnonapakospremeniv Izjemo .katerolahkoujamemoinjoustreznoobravnavamo.

Skoraj vsak Powershell ukaz podpira ukazniparameter je -ErrorAction (-EA), ki namomogočada specificiramo, kaj naj se zgodi vprimeru napake za prav ta ukaz. (pravzaprav

bi isto dosegli, če bi pred ukazom nastavili$ErrorActionPreference, izvedli ukaz, nato pa $ErrorActionPreference ponastavili.

Naslednji ukazni parameter, ki ga lahkouporabimo je -ErrorVariable (-EV) . Z njimdoločimoimespremenljivke(brez$!!!)vkaterobomo napako zajeli. In to tudi v primeru, česmoErrorActionnastavilinaSilentlyContinue.Poznamo tudi avtomatično spremenljivko $?,v katero PowerShell shrani status zadnjegaizvedenegaukazavoblikiBooleanvrednosti.Naslednja zanimiva avtomatična spremen-ljivka je $Error, ki vsebuje objekt napakezadnjega izvršenega ukaza. No pravzaprav je$Error niz (array) objektov in lahko vsebujezadnjih 256 napak, lahko pa to vrednostspremenimo z preferenčno spremenljivko$MaximumHistoryCount.

Od prve verzije PowerShella obstaja tudikonstruktTrap, in čeprav jeMicrosoftkasnejedodal TryCatchFinnaly, je Trap še vednoprisoten.Vkodimorabitidefiniranprej,predenpridedonapake

Npr:trap {Write-Host "traptraptrap...""napaka!" | Out-File c:\error.txtcontinue}Write-Host "zacetek..."Get-Content a.txt,b.txt -EA StopWrite-Host "konec..."

Ko pride do napake in se kontrola toka

Page 12: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

22 23

ADMINISTRACIJA

izvajanjapreseli vTrapkonstrukt, imamodvemožnosti kako ga zaključimo. Continue bonadaljevalizvajanjevnaslednjivrsticiodtiste,kjer jeprišlodonapake,Breakpaboprekineizvajanje kode na trenutnem nivoju. Trapelahko definiramo tudi glede na napake ki jihlovimo

trap {"vse ostale napake"}trap [System.Management.Automation.

OdprimotorejPowerShell ISE(v iskalnikStartmenijavpišemo"ISE")inselotimopisanja

Najprejbomodoločili2spremenljivki:•Potdomape,vkaterisenahajajo.zipdatotekein kjer bomo ustvarjali vse te nove mape z"razpakiranimi"datotekami.Tospremenljivkobomopoimenovali$path.o$path = "C:\Test\" • Elemente mape, ki smo jo določili s $pathspremenljivko,ki imajokončnico.zip.Tospre-

Kako avtomatizirati "razpakiranje" .zip datotek v nove mape, ki jim damo enako imeMorda iz naslova tega članka ni ravno jasno, kaj bo njegovo bistvo – naj razložim malo bolj podrobno naše želje. V neki mapi na računalniku imamo veliko število .zip datotek. Za vsako od teh .zip datotek želimo ustvariti novo mapo, ki bo nosila enako ime kot .zip datoteka, v vsako od teh map pa želimo "razpakirati" vsebino ustrezne .zip datoteke. Težave bi se seveda lahko lotili ročno, vendar bi se morali že pri drugi ali tretji .zip datoteki vprašati, če ne obstaja morda kakšna hitrejša pot. In res obstaja – PowerShell.

Klemen VončinaMicrosoft Office Specialist [email protected]

CommandNotFoundException] {"Command error trapped"}

Na koncu pa si oglejmo še že omenjeniTryCatchFinnaly konstrukt. V Try delunapišemoukaze, zakatere sumimo,da lahkopovzročijonapako.KodaspecificiranavCatchdeluse izvede,čedonapakepride,Finallypaseizvedenegledenato.

menljivkobomopoimenovali$items.o $items = get-childitem -path $path | where-object {$_.Extension -like ".zip"}

Sedajpabomonarediliforeachzanko,vkateribomoPowerShellupovedalisledeče:• Vzami en element iz $items spremenljivke(torejenood.zipdatotekizmape,določenev$pathspremenljivki).• Za ta element naredi novo mapo in ji dajenako ime, kot ga ima .zip datoteka, ki je

ADMINISTRACIJA

trenutnovzanki.•Vtoravnokarustvarjenomaporazpakiraj.zipdatoteko,kijetrenutnovzanki.•Kokončašsprvo.zipdatoteko,toistonaredišezadrugo,tretjoinvseostale.zipdatotekev$pathmapi.Kodacelotnezankeizgledatako:foreach($item in $items) { New-Item -ItemType "directory" -path $path -Name $item.basename Expand-Archive -Path $item.FullName ` -DestinationPath (Join-Path $path $item.

basename)}

Kot lahko vidimo iz naslednjih screenshotov,smo imeli pred zagonom spisane skripte vmapiC:\Test\4.zipdatoteke:

Pozagonuskriptepasejevsebinaposameznih.zipdatotekrazpakiralavistoimenskemape.

Najlepšepajeto,dalahkotoskriptouporabimokadarkoliimamopodobnosituacijo.Preprostospremenimo pot, določeno v spremenl-jivki $path na novo pot, kjer se nahajajo .zipdatoteke,kijihželimorazpakirati.Prilagam še celotno skripto, ki si jo lahkoprilepite v PowerShell ISE, spremenite $pathspremenljivko tako, da bo kazala na pot vvašemračunalniku,kjersenahajavečještevilo.zipdatotekinskriptopoženete.

$path = "C:\Test\"$items = get-childitem -path $path | where-object {$_.Extension -like ".zip"}

foreach($item in $items) { New-Item -ItemType "directory" -path $path -Name $item.basename Expand-Archive -Path $item.FullName ` -DestinationPath (Join-Path $path $item.basename) }

Page 13: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

24 25

ADMINISTRACIJA

Microsoft Endpoint Manager

Jože MarkičMCT, IT arhitekt, sistemski inženir, predavatelj

[email protected]

MEM je kombinacijaproduktov in servisov, kijih poznamo že nekaj časa (Microsoft Intuneter Configuration Manager – MECM; bivšiSCCM),nadgrajenih znaprednimi rešitvami izoblaka (Desktop Analytics, co managementin Windows Autopilot). Vse te storitve skupajnam omogočajo povečati nadzor in varnostpridostopudoslužbenihpodatkov,varovanjeslužbenih podatkov ter odziv in upravljanjerazličnihvarnostnihincidentov.

MicrosoftIntunejeoblačnastoritev,namenjenaupravljanju mobilnih naprav (mobile devicemanagement-MDM)terupravljanjumobilnihaplikacij (mobile application management- MAM). Upravljamo lahko nastavitveoperacijskih sistemov Android, AndroidEnterprise, iOS/iPadOS, macOS in Windows10. V kombinaciji z dodatnimi servisi lahkoosnovne funkcije Microsoft Intune-a šedodatnorazširimo–največjorazširitevverjetnopredstavlja kar Azure Active Directory (AAD).AAD nam omogoča nadzor nad dostopom(kdo in do česa), Premium AAD pa namdodatnoomogoči šeavtomatizacijoadminis-trativnih opravil (npr. dodajanje/povezovanjenovihnaprav).Tudiboljnapredennadzornaddostopom (Conditional Access - CA) za svojedelovanje potrebuje Premium AAD. CA nam

omogoča izredno natančen nadzor nad temkdo in pod kakšnimi pogoji (tip/konfiguracijanaprave,lokacija,čas,verzijaaplikacije,…)bolahko dostopal do službenih podatkov. S CAlahko npr. dosežemo, da lahko do službenihstoritev dostopajo samo uporabniki, ki soprijavljeninaslužben(domenski)računalnikindostopajodointernetanekjeizSlovenije.

Ko uporabnik izpolni pogoj(e) za dostop doslužbenihpodatkov,selahkoaktivirašeAzureInformationProtection(AIP).AIPjetudienaodnaprednih oblačnih rešitev, ki nam omogočaklasifikacijo in varovanje dokumentov zvzpostavitvijo šifrantov (avtomatsko, ročnoali kombinacija). AIP za svoje delovanjeuporablja Azure Rights Management (AzureRMS), ki mu omogoča integracijo z ostalimiMicrosoftovimi storitvami (Office 365, AAD,SharePoint,Exchange,…).AIPpreverivsebinodokumenta in predlaga oz. avtomatskoklasificira ta dokument glede na nastavitvešifranta–npr. administrator jenastavil, da seštevilke kreditnih kartic lahko posredujejosamo znotraj podjetja v finančni oddelek. Kose pripravlja šifrant, imamo dve možnosti zakonfiguracijo–samoklasifikacijaalipaklasifik-acijainščitenjevsebine.Pouspešnikonfigura-cijišifrantovlahkoadministratorjispremljamo

Microsoft Endpoint Manager (MEM) je novo poimenovanje za nabor Microsof-

tovih produktov, ki omogočajo hkratno upravljanje obstoječega (tradicionalnega)

okolja (fizični/virtualni strežniki, službene delovne postaje, službeni prenosniki) in

novega, primarno mobilnega okolja (telefoni, tablice, domači/osebni računalniki).

ADMINISTRACIJA

Windows Information Protection (WIP) jemehanizem za nadzor nad podatki (MAM)v Windows 10, kjer za konfiguracijo WIPpolitik potrebujemo ali Microsoft Intuneali pa MECM oz. kak drug MDM produkt. Povzpostavitvi želene konfiguracije nam WIPomogoča selektivno brisanje službenih/občutljivih podatkov tako na osebnih kottudi službenih računalnikih.WIP jenamenjentudi ščitenju podatkov, ko jih uporabnik izcentralne lokacije (SharePoint, skupnemape,spletne strani,…) prenese na svoj računalnik

– v tem primeru se podatki lokalno šifrirajooz. kriptirajo (z Windows Encrypting FileSystem-EFS).ZWIPpolitikoimamododatnomožnost nadzora nad aplikacijami, ki bodoobdelovaleslužbene/občutljivepodatke–npr.uporabnik lahko kopira podatke samo meddovoljenimi aplikacijami; uporabnik lahko zadostop do službene spletne strani uporabljasamodovoljenebrskalnike,…Česeuporabnikodloči narediti »varnostno kopijo« službenihpodatkov na zunanji medij (USB), bodopodatkinanovilokacijiravnotakozavarovani.

rabo dokumentov z določenimi šifranti in potencialno zaznamo sumljive aktivnosti. OmembevrednalastnostAIPzaščitejetudidejstvo,dazaščita(politika,nastavljenaprekošifranta)ostanevdokumentuoz.email-unegledenalokacijoinnačinprenosameduporabniki.

Page 14: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

26 27

ADMINISTRACIJA

Configuration Manager (MECM) marsikdože dobro pozna iz časa pred MEM, kjer smovečinoma upravljali le službene strežnike terstacionarne in prenosne računalnike, ki sobilivnaši internimreži.Vsetopase jezačelozAzureindrugimioblačnimistoritvamipočasispreminjati. Danes lahko MECM povežemoz različnimi oblačnimi storitvami (Azure,Intune,AAD,MicrosoftDefenderATP,Desktop

Analytics, Microsoft Store for Business,…) intakorazširimoomejenoupravljanjeMECM-jatudiv internet.Co-management jeendoberprimerteintegracije,kjerlahkopovzpostavitvipovezavemedMECMinIntune-omzačnemoupravljati naprave na povsem nove načine.Zalokacijoupravljanjaseodločimobkonfig-uracijiposameznekomponente(Compliancepolicies,WindowsUpdatepolicies,Resource

ADMINISTRACIJA

• administratorjilahkouporabimoCMPivotin zagon skript za vse MECM naprave izMEMkonzole

• Company Portal aplikacija omogočauporabnikom nameščanje Intune inConfigurationManageraplikacij

Tudi Desktop Analytics (DO) je zanimivarazširitev za MECM, ki nam omogočapridobivanje informacij o našem okolju, naosnovi katerih lahko nato načrtujemo boljoptimalnoupravljanjeinnadgradnjeWindowsklientov(gledenastanjenamestitevvarnostnihpopravkov, verzij strojne opreme, operacijs-kegasistema,aplikacijingonilnikov).NaosnovitehpodatkovnamDOdaopozorilagledetežavz združljivostjo aplikacij in gonilnikov z novoverzijooperacijskegasistemahkratipadobimotudi priporočila za pripravo skupine testnihuporabnikov pri prehodu na novejšo verzijooperacijskegasistema.

Vse,kijihzanimaMEMinostalezgorajopisanestoritve, vabim, da se udeležite MOC tečajaMD-101 (Managing Modern Desktops), kjerbomo vse te stvari pogledali najprej v teoriji,

natopa jihbostepreizkusiliševpraksi.Nekajmalegavednorečemotudiolicenciranju,kijez naborom novih servisov postal kar zanimivizziv takozaodločevalcekot tudi zaadminis-tratorje.

access policies, Endpoint Protection, Deviceconfiguration,OfficeClick-to-Runapps,Clientapps), kjer lahko izvajamo upravljanje alilokalnoalivoblakuoz.mešano(zadelnapravlokalno, za del naprav v oblaku). Da slučajnone pride do težav pri konfiguraciji različnihnastavitev(ADGPO,MECM,Intune,…)hočemonabor določenih nastavitev upravljati le naenem mestu – MECM in Intune integracijaprepreči upravljanje iste nastavitve na enemračunalnikuizobehorodij.ZnovimiverzijamiMECM-ja Co management prinaša novosti,ki bodo administratorjem in uporabnikomolajšaledeloininterakcijoskonzolami:• administratorji lahko dobimo celoten

hardwareinventoryvoblaku• administratorjilahkovidimovMEMkonzoli

zgodovino sprememb na napravah(vključnoznapakami(error,hang,crash)aplikacij insistema,namestitveaplikacij,posodobitevinfirmware-a,…)

Page 15: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

Zagotovite si svoje mesto na

prihajajočih izobraževanjih:

• Teča:j ITIL V4 Foundation,

• 11. – 13. 11. 2020

• Tečaj: ITIL V4 Specialist: Create,

Deliver & Support, 9.-11.12.2020

28 29

BOOTCAMPOFFICE 365 & AZURE

BOHINJ, 6. – 13. MAREC 2021

REZERVIRAJTE SI ČAS!

Tečaj je namenjen sistemskim skrbnikom, ki želijo nadgraditi in

poglobiti svoje znanje z Microsoft storitvami v oblaku. Ne glede na

intenzivnost izobraževanja pa je ravno Bootcamp način izobraževanja

tisto, ki časovno omogoča poglobljeni pogled v nove tehnologije.

Tako kot na preteklih Bootcamp-ih, bo tudi na tem poudarek na:• Pridobivanju praktičnega in

uporabnega znanja,

• pregledu dobrih praks pri

načrtovanju in implementiranju

storitev v oblaku.

Poleg osnovnih izkušenj (pa čeprav prvih) s storitvami v oblaku bodo udeleženci pridobili tudi osnovna znan-ja o:• Načrtovanju storitev v oblaku,

• zaščiti in varovanju storitev v oblaku,• hibridnih scenarijih.

Za udeležbo je priporočeno:• Poznavanje in razumevanje Mic-

rosoft Active Directory (uporabniki,

skupine, delegacija,…),

• poznavanje in razumevanje mrežne

konfiguracije (Domain Name System

(DNS), DHCP, javni/privatni IP,…),

• poznavanje in razumevanje osnovnih

konceptov virtualizacije in oblaka,

• uporaba in delo z digitalnimi potrdili

(certifikati).

Iz vsebine:• Azure Active Directory (Azure AD),

• Office 365 ,

• Intune (mobile device management),

• Azure (mreže, virtualke, diski, var-

nost,…).

Vabimo vas, da se prijavite na našo listo interesentov, kjer vas bomo naprej obveščali o podrobnostih programa. Smo vam pa vedno na voljo za vsa vaša vprašanja tudi preko telefona: 01 5136993, 01 5136992.

V današnjem, hitro spreminjajočem se svetu,

je zmožnost prilagajanja nenehno spreminja-

jočimserazmeramnatrguizjemnegapomena.

Korazmišljamoodigitalnitransformacijilahko

zaključimo, da je osnova za dobro digitalno

transformacijo avtomatizacija in digitali-

zacijainternihprocesov,kislužijoznamenom

izvajanjastoritevorganizacije,kisousmerjene

kstranki/uporabnikom(UX).

Digitalna transformacija osnovana na najnovejši različici ITIL V4

Tukajnam,kotnajboljšapraksapomaga ITIL,ki jessvojozadnjorazličico ITILV4naredilvelik

preskokkupravljanjustoritev,znjimipovezanihprocesovindojemanjadigitalnetransformacije.

VnoviverzijiITILV4sonavoljorazličnaizobraževanjazarazličneprofileljudi.

Posamezni moduli, kjer se lahko

pobliže spoznate s pristopi in

principi,ki jihzagovarja ITIL inkako

so le-ti mapirani na posamezno

področje digitalne transformacije je

prikazanonaspodnjisliki.

Rok Sajovic, ITSM Center

Page 16: VZPOSTAVITEV PORTALA ZA SKUPNO RABO ......16. marec 2021 ,=2%5$æ(9$1-$ 0,&5262)785$'1,7(ÿ$-, IT certifikati – del strateškega razvojnega načrta str. 30 Spoštovani, Veliko negotovosti

ZzdruženjemLLPA,kateregapredstavnikSlovenijejeKompas

Xnet,smopotovalipovsemsvetu,dabizvamidelilizgodbeo

uspehu.

Preverite,kakosoLili,Ivan,Mattiterdrugiširomposvetuuspeli

vsvojikarieri.Odprlesosejimštevilnepriložnosti,kosos

strokovnimusposabljanjemvnašihizobraževalnihcentrihokrepili

poznavanjeMicrosofttehnologijinseuspešnocertificirali.

30 31

DRUGO

poslovne cilje, hkrati pa vas tudipripraviti na

uspešenstartprihodnjegaleta.Neodlašajtein

namzaupajtevašeizobraževalneželje,ciljeinz

veseljemvambomopomagali.

Inkobosteplanirali, rezervirajte si16. marec

2021. Na zemljevid Global Cloud Skill v-tour,

smo dodali tudi Slovenijo. Organizirali

bomo virtualni dogodek, ki je del globalne

kampanje v sodelovanju z mednarodnim

združenjem izobraževalnih centrov - LLPA,

katerega predstavnik za Slovenijo je Kompas

Xnet. S strokovnjaki se bomo pogovarjali

kako graditi visoko zmogljive ekipe in bolje

izkoristitinaložbevoblaku. Izvedelibosteveč

o najnovejšem usposabljanju in certificiranju

na osnovi vlog, pobudah za usposabljanje,

potrebnih veščinah, učnih poteh, dobrih

praksahinševeč.

Vzporedno bo potekalo tudi tekmovanje

LLPA Cloud Skills CUP. Na lokalnem turnirju

bomoiskalinajboljšeposameznikeCloudPro,

Data&AI Pro ter Developer-ja. Ste to morda

prav vi? Najboljši boste zastopali Slovenijo

na svetovnem prvenstvu in se potegovali za

prestižennaslovterleponagrado.

ZGODBE O USPEHU

Oglejte si:

ADMINISTRACIJA / DRUGO

Digitalna transformacija se kaže v podjetjih

vsehvelikosti,povsemsvetu.TudivSloveniji

sevseboljudomačuje–takovglavahljudikot

tudi poslovnih procesih podjetij. Vodstva se

zavedajo, da brez digitaliziranih in avtomati-

ziranihprocesovnebodovečkonkurenčna.

Da ostajamo konkurenčni, sprejemamo

nove tehnologije, ki spodbujajo inovacije in

s pomočjo katerih bolje razumemo stranke,

optimiziramo poslovanje in stroške. Zdi se

dokaj preprosto. Gre pa za veliko potezo,

ki je lahko uspešna le, če jo podpira ekipa,

usposobljenazaizkoriščanjenovihtehnoloških

zmogljivosti. Še več, ni dovolj le uporaba

tehnologije v prvotni obliki, podjetja so zdaj

zadolžena tudi za razvoj novih zmogljivosti iz

tehnologije,kijenavoljo.

Za uspešno podporo kritičnih poslovnih

ciljev morajo organizacije sprejeti nova

znanja, izkoristiti nove tehnologije in

nenehno nadgrajevati svoje sposobnosti.

Pri oblikovanju uspešne organizacije in

učinkovitem izvajanju pobud za digitalno

preobrazbo so lahko IT vodjem in/ali

kadrovski službi v veliko pomoč ustrezni,

dobro zasnovani IT certifikati, ki temeljijo na

posameznih delovnih vlogah. Strokovnjaki

zaITnamrečprevzemajonovevloge,delajoz

IT certifikati – del strateškega razvojnega načrta

Petra MilitarevVodja izobraževanj

[email protected]

novimiinboljraznolikimirešitvamiteruvajajo

nove konfiguracije. Programi certificiranja so

takolahkodelzanesljivegarazvojneganačrta,

ki organizacijam pomagajo graditi veščine v

vsakifazipotitransformacije.

Medtem ko raziskave dosledno kažejo, da

usposabljanje in certificiranje vodita k večji

uspešnosti, te raziskave kažejo na še eno

prednostcertificiranja:certificiraniIT-strokovn-

jaki so sposobnejši sprejemati nove procese

in spretnosti ter jih uporabljati v korist svoje

organizacijeinimajorastnomiselnost.

KateredelovnevlogeincertifikatejeMicrosoft

zaznalzaključne,silahkoogledatenaposterju

Microsoftrole-basedtehničneveščine.Navsak

certifikatselahkopripravitezustreznimuspos-

abljanjem.Znanje lahkopridobitezudeležbo

na tečaju v našem izobraževalnem centru, ki

poteka v učilnici ali preko live virtual oblike.

Ekipa vrhunskih predavateljev z nazivi MCT,

MVP, MCM in z bogatimi izkušnjami s terena,

prisluhne vašim potrebam ter vam svetuje.

V Izpitnem centru se z opravljenim izpitom

certificirate in tako potrdite vaše veščine in

predanostpoklicnemurazvoju.

Smo v tistem delu leta, ko smo pred zakl-

jučevanjeminhkratiplaniranjemzanaslednje

leto. Naj vam pomagamo doseči še letošnje