2009. május havi bejegyzések

Informatika Tisztán – Megoldásbörze letöltések

Letölthetőek az Informatika Tisztán sorozat múlt heti Megoldásbörzéjén tartott előadásaim prezentációi és videói.

Adatokat az intranetre

Data Source Library SharePoint DesignerbenPartnerek, ügyfelek és a saját munkatársak elérhetővé és kereshetővé tétele az intraneten

Gyakran merül fel az igény, hogy egy vállalaton belül összegyűjtött adatbázist, például a partnereink elérhetőségeit szeretnénk a munkatársak között megosztani, webes felületen megjeleníteni, rendezhetővé és kereshetővé tenni. Az előadásban a Windows SharePoint Services webkijelző infrastruktúrájára épülve, SharePoint Designer segítségével, fejlesztés nélkül tesszük közzé a relációs adatbázisban tárolt adatainkat az intraneten.

  • Prezentáció (1694 kB)
  • A screencast a képre kattintva megtekinthető, vagy a kép alatti hivatkozás segítségével letölthető teljes vagy rövid változatban:

Adatokat az intranetre - screencast

Teljes változat: Adatokat_az_intranetre.wmv (37:34, 206 722 kB)

Rövid összefoglaló: Adatokat_az_intranetre_rovid.wmv (3:46, 20 538 kB)

Dokumentumok standardizálása

Új dokumentum létrehozása dokumentumtárban Céges dokumentumok automatikus előállítása: árajánlatok, szerződések, teljesítésigazolások generálása

A vállalati előírásoknak, formuláknak megfelelő dokumentumok manuális előállítása nehézkes és időigényes feladat, különösen akkor, ha a szükséges adatokat nekünk kell más dokumentumokból összevadásznunk. Az előadásban bemutatjuk, hogyan használhatjuk ki a Windows SharePoint Services dokumentumtárait és a SharePoint Designer grafikus lehetőségeit árajánlatokat, szerződéseket és teljesítésigazolásokat létrehozó munkafolyamatok készítésére.

  • Prezentáció (1152 kB)
  • A screencast a képre kattintva megtekinthető, vagy a kép alatti hivatkozás segítségével letölthető teljes vagy rövid változatban:

A Dokumentumok standardizálása c. screencast megtekintése

Teljes változat: Dokumentumok_standardizalasa.wmv (46:58, 259 015 kB)

Rövid összefoglaló: Dokumentumok_standardizalasa_rovid.wmv (7:54, 42 180 kB)

Aki ott volt a Sugárban, vagy esetleg letöltötte és megnézte ezeket a felvételeket, kérem írjon valami visszajelzést, hasznos, megérte?

SSL használata IIS 7 alatt

Alapértelmezés szerint a kliens és a webszerver közötti kommunikáció titkosítatlanul történik, amely lehetővé teszi az átküldött adatok lehallgatását. Ez különösen akkor kellemetlen, ha a böngésző és a webkiszolgáló között érzékeny adatok utaznak, például egy kitöltött űrlap adatai, felhasználónevek és jelszavak vagy éppen egy hitelesítéshez használt cookie, ugyanis egy támadó eltulajdoníthatja vagy felhasználhatja ezeket az információkat a kliens megszemélyesítésére vagy egy visszajátszásos támadásra. A megoldás a kommunikációs csatorna titkosítása, amely a Secure Sockets Layer (SSL) protokoll segítségével történhet.

IIS Manager: SSL konfigurálása Az SSL működéséhez a webkiszolgálónak egy tanúsítványra van szüksége, amelyet jobb esetben egy tanúsítvány szolgáltatótól (certificate authority, CA) célszerű vásárolni. Egyszerűbb esetekben megengedhetjük magunknak, hogy úgynevezett önaláírt tanúsítványt használunk, a titkosítást ugyanis ez is biztosítja.

Miután megvan a tanúsítvány, még engedélyeznünk kell, hogy egy adott webhely a HTTPS protokollhoz rendelt 443 porton is elérhető legyen, ez az ún. binding.

Demó

A demóban előbb bemutatjuk, hogyan hozhatunk létre önaláírt tanúsítvány az IIS Manager segítségével, majd hozzárendeljük azt egy webhelyhez, végül pedig kikényszerítjük, hogy a kliens SSL csatornán keresztül kapcsolódjon a webhelyhez.

A videó a képre kattintva megtekinthető böngészőben vagy a kép alatti linkre kattintva letölthető:

SSL beállítása IIS 7 alatt - demó

Letöltés: SSL.wmv (12:16, 50.8 MB)

Első lépések

Első lépésként szerezzünk be egy hiteles tanúsítványt, vagy ha csak kísérletezünk, akkor használjuk az IIS Manager Server Certificates moduljában a Create Self-Signed Certificate gombot egy önaláírt tanúsítvány előállítására. Ezek után nyissuk meg egy webhelyen a Bindings… ablakot és rendeljük hozzá a webhelyhez a https protokollt és a 443 portot a korábban létrehozott tanúsítvánnyal.

Jó tudni

Az IIS Managerben lévő Create Self-Signed Certificate varázsló nem kérdezi meg, hogy milyen név szerepeljen a tanúsítványon. Ha tehát a webkiszolgálónk több néven is elérhető, nem fogjuk tudni megadni, hogy melyik névre szóljon a tanúsítvány.

Ha a tanúsítvány létrehozásakor meg szeretnénk adni a tanúsítvány paramétereit, akkor célszerű az IIS Manager beépített szolgáltatása helyett az IIS 6 Resource Kitben lévő SelfSSL programot használni. Ez viszont csak akkor fog működni IIS 7 alatt, ha feltelepítjük az IIS 6 Management Compatibility komponenst is.

További információk

Rendezvény meghívó: Legyen saját iwiwed!

Az MSDN Kompetencia Központ és a Microsoft Magyarország szervezésében 2009. május 25-én ismét lesz ingyenes ASP.NET tanfolyam, melyen a résztvevők az alapoktól kezdve testközelből ismerhetik meg az ASP.NET technológiát! Az egy napos rendezvény keretén belül minden laptoppal érkező számára virtuális környezetet biztosítunk, és együtt építünk meg egy kapcsolati hálón alapuló közösségi webalkalmazást.

A részletes program (és remélhetőleg hamarosan a regisztrációs link is) megtalálható a devPORTALon.

Cannon, p.i.

Új sorozat indul:

Cannon PI

Aki még nem hallott a Microsoft Web Platform Installerről (Web PI) (az új már a korábbi Web Application Installert is tartalmazza), annak ajánlom figyelmébe Dávid Zoli videóit az MSDN Kompetencia Központ Videótárában.

ui: vö. Steve Riley: Good bye, and good luck

Steve Riley: Good bye, and good luck

Ezt most olvastam Steve Riley blogjában és nem kicsit sokkolt:

“Friends, as a part of Microsoft’s second round of restructuring, my position was eliminated yesterday and my employment with Microsoft has ended.”

Aki hallotta már Steve valamelyik előadását a TechNet Spotlighton vagy éppen személyesen a TechEden biztosan egyetért velem abban, hogy ez a fickó tud valamit. Nem csak a biztonságról, hanem arról is, hogy hogyan kell róla beszélni, hogyan kell a témát előadni. Korábban már sikerült a hasonló kaliberű Jesper Johanssontól is megválni, aki azért szerencsére konferencia közelben maradt, legalábbis a tavalyi barcelonai TechEden még ott volt.

Nem értem a stratégiát. Ezeket az embereket azért fizette a Microsoft, hogy felhívják a figyelmet az informatikai biztonságra és a Trustworthy Computing zászlója alatt kiemeljék az átlag informatikust a sötét középkorból. Most kész lennénk, a mór megtette kötelességét, a mór mehet? Mindenki naprakész lett a biztonsággal kapcsolatos témákból, sőt továbbra is mindenki önerőből naprakészen fogja magát tartani? Ha ez így folytatódik, szerintem szép lassan vissza fogunk süllyedni.

Mit gondoltok, ez így nooooooormális?

Active Directory lekérdezése T-SQL-ből

Aki valaha is foglalkozott már az Active Directory-val az tudja, hogy a címtár felépítése gyökeresen eltér egy relációs adatbázis szerkezetétől. Nem elég, hogy az egyes elemek konténerekben helyezkednek el, melyek hierarchikus kapcsolatban állnak egymással, de egy konténeren belül teljesen különböző tulajdonságokkal bíró címtár objektumok is lehetnek. És mégis, van lehetőség arra, hogy az SQL Servernek megtanítsuk, hogyan kell lekérdezni a címtárat. Perverzek előnyben 🙂

A megoldás kulcsa, hogy az SQL Server képes ún. linked servereket kezelni, ami gyakorlatilag bármilyen OLE DB adatforrás lehet. Íme egy ábra a Books Online-ból, akit a szöveg is érdekel, itt olvasson tovább:

Linked Servers: Client tier, server tier, and database server tier

T-SQL-ben mindez így történik:

    EXEC sp_addlinkedserver 
        @server = N'ADSI', 
        @srvproduct = N'Active Directory Service Interfaces', 
        @provider = N'ADSDSOObject', 
        @datasrc = N'adsdatasource'
    GO

Az sp_addlinkedserver dokumentációjában egy rakás adatforrásról találunk leírást, de az ADsDSOObject valahogy kimaradt. Ennek valószínűleg az az oka, hogy nincs sok köze az SQL Serverhez, az ADsDSOObject ugyanis Windows 2000-től kezdve az Active Directory Service Interfaces (ADSI) OLE DB Provider, amit már az ADO is ismert sok más providerrel együtt.

Persze kell egy felhasználó, akinek a nevében az SQL Server olvashatja a címtárat:

    EXEC sp_addlinkedsrvlogin 
        @rmtsrvname = N'ADSI', 
        @useself = N'False', 
        @rmtuser = N'TARTOMANYfelhasznalo', 
        @rmtpassword = N'T1tk0sJel520!'
    GO

Persze aki inkább kattintgatni szeret, ugyanezeket beállíthatja SQL Server Management Studioban is: a Server Object ág alatt található Linked Servers ágnál érdemes körülnézni:

Linked Servers a Management Studioban

Az így létrehozott linked serveren az OPENQUERY utasítással futtathatunk lekérdezéseket. Hogy ezzel ne kelljen mindig küzdeni, én inkább létrehoztam egy nézetet (ahogy Eriktől megtanultam, a tempdb kiváló játszótér erre a célra):

    CREATE VIEW [dbo].[vw_MyGroup]
    AS
    SELECT     
      sAMAccountName  AS [Login Name], 
      givenName       AS [First Name], 
      sn              AS [Last Name], 
      displayName     AS [Full Name], 
      mail            AS [E-Mail Address], 
      telephoneNumber AS [Phone]
    FROM
      OPENQUERY( ADSI, 
        'SELECT sAMAccountName, givenName, sn, displayName, mail, telephoneNumber 
        FROM ''LDAP://demodc.demodom.local'' 
        WHERE objectClass = ''user'' AND
          memberOf = ''CN=MyGroup,CN=Users,dc=demodom,dc=local'' ' )
      AS t
    GO

A memberOf attribútum lekérdezésével azt sikerült megadni, hogy csak azokat a felhasználókat kapjuk meg, akik tagjai a MyGroup nevű csoportnak. Persze ezeknek a kacifántos LDAP útvonalaknak a megírása okozhat még némi nehézséget, de abban az ADSI Edit nevű eszköz sokat segíthet. Ugyanezzel az eszközzel az objektumok attribútumai között is mazsolázhatunk.

Lehet ám még fokozni a képet, például SharePoint bevonásával. Hogy pontosan hogyan és miért, azt a jövő keddi Megoldásbörzén megmutatom.